バージョン選択

フォーラム

メニュー

オンライン状況

80 人のユーザが現在オンラインです。 (73 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 80
もっと...

サイト内検索

質問 > 管理機能 > (2.13.3)受注一覧のCSVダウンロードが文字化けする

管理機能

新規スレッドを追加する

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
yoshin
投稿日時: 2017/1/13 9:06
対応状況: 解決済
半人前
登録日: 2012/7/3
居住地:
投稿: 17
Re: (2.13.3)受注一覧のCSVダウンロードが文字化けする
すみません、対応状況を解決済みにしておりませんでした。
yoshin
投稿日時: 2017/1/13 9:04
対応状況: −−−
半人前
登録日: 2012/7/3
居住地:
投稿: 17
Re: (2.13.3)受注一覧のCSVダウンロードが文字化けする
468様

ご返信有難うございます。

調べてみたところ、SC_Helper_Purchase_Ex.phpがいつの間にかBOM付きになっていたようです。
これをBOMなしで保存し直したところ、化けずに表示されました!
(このコードの機能的には、CSVダウンロードと関連性がなさそうに思ったのですが…こういうこともあるんですね…)

文字コードを変えて保存したような記憶はなかったのですが、何かの拍子に変えてしまっていたのかと思います。

原因が全くわからず途方にくれておりました。

今後何らかのトラブルが合った場合には、BOMについてもチェックしていくようにいたします。

長らくアドバイスを下さり、本当にありがとうございました!
468
投稿日時: 2017/1/12 17:01
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: (2.13.3)受注一覧のCSVダウンロードが文字化けする
どれか編集されたPHPファイルがBOM付きUTF-8で保存されていませんか?
以下のサイトにその旨の説明があります。

http://gagago.cocolog-nifty.com/blog/2009/05/shift-jis.html


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

yoshin
投稿日時: 2017/1/12 16:35
対応状況: −−−
半人前
登録日: 2012/7/3
居住地:
投稿: 17
Re: (2.13.3)受注一覧のCSVダウンロードが文字化けする
468様

ご返信ありがとうございます。

記号の出力は、記憶にありません…

ただ、不具合のタイミングとぜんぜん違いますし、機能的には全く関係のないと思っていたところなので、可能性からは私の中で勝手に除外していたのですが、一度昨年12月中頃に業者様に一部プログラムを触ってもらっています。ただ、その後もCSVダウンロードは問題なくできていました。

デザイン管理>ページ詳細設定で作成したページに、商品情報(カテゴリ一覧のような表示形態で、任意の商品の情報を表示しカートに追加できるようにしたもの)を表示するためのものがすでに導入されており、ページは問題なく表示できていたのですが、HTTPステータスに500が返ってきていたので、それを修正してもらいました。
具体的には、コードの中にDestroyが入っていたので、それを削除したと聞いています。

この変更が影響を与えている可能性はありそうでしょうか…?

あと、触ったところといえば、
------
・一部ブロックをレイアウトから除いた
・SC_Helper_Purchase_Ex.phpの「発送目安」の数値を変更
・デザイン管理>ページ詳細設定で新しいページを1ページ作成(内容は既存のものと大きく変わらず)
  →一旦削除してみましたが、改善しませんでした
------
くらいです。特にechoやprintは使っていません。

長らくお付き合い下さり、恐縮しております。

以上、よろしくお願い致します。
468
投稿日時: 2017/1/12 15:12
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: (2.13.3)受注一覧のCSVダウンロードが文字化けする
返信ありがとうございます。
返信いただいた内容からcsv自体はshift-jisできちんと出力されているようです。
エンコードは正常に処理されています。
先頭の文字があることでエクセルでエラーになっていると思います。
処理のどこかで何か記号など出力された記憶はございませんか?
echoやprint等をデバッグで埋め込んだ等・・・。


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

yoshin
投稿日時: 2017/1/12 13:13
対応状況: −−−
半人前
登録日: 2012/7/3
居住地:
投稿: 17
Re: (2.13.3)受注一覧のCSVダウンロードが文字化けする
468様

Terapadで開いたときも、文字化け状態です。

Terapad上で開くと、はじめに「Null文字を含むファイルです。〜」という警告が出て、そのまま開くと、化けた状態のテキストが表示されます。(この時、文字コードはUTF-8Nと表示されています)

これを、Terapad上で「SHIFT-JIS」に文字コード指定再読込をすると、正しく表示されます。(ファイルの冒頭に「・ソ」という謎の文字列が加わっていますが…)

エラーに気づいたのは、仰る通りエクセルで開いたときです。
ただ、Terapadで開いたときとエクセルで開いたときには、化け方が違います。

---
Terapad(UTF-8N):???¶???
Excel:ԍ
Terapad(SHIFT-JIS):・ソ注文番号
---

文字コード変換の失敗と伺い、同様の事例がないか色々と検索してみたのですが…すみません、(今のところ)見つけることはできていません。

解決の糸口となりますでしょうか。

ご多忙の中、申し訳ございません。よろしくお願いいたします。
468
投稿日時: 2017/1/12 12:00
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: (2.13.3)受注一覧のCSVダウンロードが文字化けする
Terapadで開いている時は、csvの文字自体は文字化けせずに、正しく表示されていますか?
その時も文字化けしているようであれば、文字コード変換に失敗して、テキストデータが壊れていると思います。
この現象に気付かれたのは、エクセルで開いた時等でしょうか?


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

yoshin
投稿日時: 2017/1/12 10:44
対応状況: −−−
半人前
登録日: 2012/7/3
居住地:
投稿: 17
Re: (2.13.3)受注一覧のCSVダウンロードが文字化けする
468様

ご返信ありがとうございます。

文字化けはヘッダ行・データ行共にです。

また、文字コードの確認は、化けたファイルをTerapadで開いて確認いたしました。
具体的には、「UTF-8N」改行コードは「CRLF」とありました。
こんなイメージです→http://uxmilk.jp/47131

…今気づいたのですが、下記コードが改行コードを変えるためのものであるならば、これについては機能しているということになりますね…
---
stream_filter_append($fp, 'convert.eccube_lf2crlf');
---

お忙しい中、申し訳ございません。よろしくお願いいたします。
468
投稿日時: 2017/1/12 9:55
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: (2.13.3)受注一覧のCSVダウンロードが文字化けする
1点確認なのですが、ダウンロードされたCSVは、1行目のヘッダー、2行目以降のデータ行ともに文字化けされいるという事でよろしいでしょうか?
ダウンロードされたCSVがUTF-8というのは、どのように確認されたのでしょうか?


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

yoshin
投稿日時: 2017/1/12 9:39
対応状況: −−−
半人前
登録日: 2012/7/3
居住地:
投稿: 17
Re: (2.13.3)受注一覧のCSVダウンロードが文字化けする
追記いたします。

--------
print "a";
exit;
--------



--------
stream_filter_append($fp, 'convert.eccube_lf2crlf');
--------

の後ろに持っていった場合でも、同様に「a」が表示されて、ファイルは出力されませんでした。
両方共ちゃんと通っているということかと思います。

--------
return $fp;
--------

の後ろに持っていった場合は、文字化けファイルが出力され、「a」は表示されませんでした。

http://php.net/manual/ja/function.stream-filter-append.php
↑をみる限りでは、この関数は入力が適切であればファイルを、不適切であればfalseを返すと記載があったので、この関数に受け渡される値については問題がないということかと認識しています。

PHPのバージョンも再確認いたしましたが、たしかに5.3.3でしたので、stream_filter_appendは動作する環境かと思われます。

stream_filter_appendについて色々と検索してみたのですが、通っているのに動作しないという状況の解決に役立つ情報を見つけることができず…

ご多忙のところ、申し訳ございません。ご教授のほど、よろしくお願いいたします。
(1) 2 »
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,856名です
総投稿数は109,989件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1291
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.