TAMURA Toshihiko
tamur****@bitsc*****
2005年 12月 19日 (月) 12:04:51 JST
こんにちは、田村です。 反応が遅くなってしまいました。 On Thu, 15 Dec 2005 00:28:28 +0900 UHH51****@nifty***** wrote: > /catalog/includes/modules/payment/remisecsp.phpはEUC-JPにて > 保存する事を再度確認しています。 > > 文字化けする個所は、 > モジュール設定 ->「支払モジュール設定」の > モジュール名(REMISEコンビニエンスストア決済は除く)は問題ないですが、 > 支払モジュール全ての編集右側テーブルの中の日本語が文字化けになります。 > > 当方で それなりに調べたのですが、 > /catalog/includes/modules/payment/remisecsp.phpの22〜23行目の > > if(ini_get('output_handler') != 'mb_output_handler') > ob_start("mb_output_handler"); > > を仮にコメントアウトすると文字化けの症状はなくなります。 > この二行は、REMISECSP.php,v 1.0.5a 2004/06/25 以前のバージョンには > 無かったと思われます。この2行が、何を意味しているかが当方では > 判断できないため、お分かりの方、ご教授願います。 現象としては、admin側の「支払モジュール設定」画面だけで文字化けが 発生して、caralog 側では発生していないということでしょうか? こちらの環境では文字化けは起こらなかったのですが、 php関連の設定によっては、以下の(1)(2)の箇所が原因で 文字化けが起こるのかもしれません。 (1) /catalog/includes/modules/payment/remisecsp.php 22〜23行目 ------------------------------------------------------------ if(ini_get('output_handler') != 'mb_output_handler') ob_start("mb_output_handler"); ------------------------------------------------------------ (2) /catalog/includes/modules/payment/remisecsp.php 103行目 ------------------------------------------------------------ mb_http_output("SJIS-win"); ------------------------------------------------------------ 上の(1)(2)のコードを作成者(株式会社エンドレスネット)に 問い合わせたのですが、コードの意図としては、 決済時のPOSTデータをShiftJISに限定しているために、 出力文字エンコーディングShiftJISにしたいということだそうです。 それで、今回のような問題が起こる場合の対策としては、 上の(1)(2)の行をコメントアウトして、 サイトのcatalog側ページをShiftJISで出力するように php.ini や .htaccess 等で設定を行うのがよいと思います。 (参照) 例3. SJIS ユーザ用の php.iniの 設定 http://jp.php.net/manual/ja/ref.mbstring.php -- 田村敏彦 / 株式会社ビットスコープ E-mail:tamur****@bitsc***** http://www.bitscope.co.jp/