バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

機能要望 > その他 > UTF-8でお知らせの文字化け修正

その他

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
nanasess
投稿日時: 2007/4/23 17:49
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2314
Re: UTF-8でお知らせの文字化け修正
大河内です.

原因がだいたい解ったような感じです.
検証してないので, はずしているかもしれませんが...

まず, mbstring.script_encoding が定義されてなさそうですので, この値が null と仮定します.
そうすると, PHPの内部エンコーディング(mbstring.internal_encoding) は, まず php.ini の EUC-JP が適用されている状態となります.
ということは, PHP スクリプトを実行しない状態では, ファイルエンコーディングが UTF-8 なのにもかかわらず, mbstring.script_encoding が EUC-JP となると思われます.

mbstring.http_input が UTF-8 となっていますので, UTF-8 で入力されますが, 何らかの原因(おそらく, mbstring.encoding_translation が on のため)で, エンコーディング変換をしようとし, mbstring.substitute_character が none のため, 空文字に変換されて出力してしまうのではないでしょうか.
そこで, mbstring.encoding_translation off でエンコーディングの内部変換をしないように設定すると, 正常に出力されるようになる...と思われます.

下記のようになるよう設定してみてはいかがでしょうか?


mbstring.detect_order			auto
mbstring.encoding_translation		On
mbstring.func_overload			0
mbstring.http_input			auto
mbstring.http_output			UTF-8
mbstring.internal_encoding		UTF-8
mbstring.language			Japanese
mbstring.script_encoding                UTF-8
mbstring.substitute_character		none


また, こうした場合, モバイル版の検索では文字化けしたり, 検索できなかったりということはありませんでしょうか?
モバイル版では, .htaccess で mbstring.encoding_translation 0 になるので, GET の文字列が SJIS のまま渡されそうです.

したがって, mbstring.encoding_transration on にした上で, html/products/list.php の 84行目付近や, 99行目あたり,

$_GET['name'] の箇所を,

mb_convert_encoding(rawurldecode($_GET["name"]), "UTF-8", "auto");


このように rawurldecode で SJIS のバイトコードに正しく decode してやった上で, UTF-8 にエンコーディング変換してやらないと正しく動作しないような気がします.

このあたりも正確に検証しておりませんのではずしているかもしれません...

PHP 4.3.9 なのは関連性はないと思います.

正確には, テストスクリプトを作成して検証しなければならないのと, mbstring モジュールのソースコードを確認しなければわかりませんね...

# ゴミになってしまったらスミマセン...
フラット表示 前のトピック | 次のトピック


題名 投稿者 日時
   UTF-8でお知らせの文字化け修正 ゲスト 2007/4/6 17:48
     Re: UTF-8でお知らせの文字化け修正 ゲスト 2007/4/7 9:29
       Re: UTF-8でお知らせの文字化け修正 nanasess 2007/4/7 10:02
         Re: UTF-8でお知らせの文字化け修正 ramrun 2007/4/18 21:41
           Re: UTF-8でお知らせの文字化け修正 nanasess 2007/4/19 22:02
             Re: UTF-8でお知らせの文字化け修正 ramrun 2007/4/20 0:49
               Re: UTF-8でお知らせの文字化け修正 nanasess 2007/4/23 9:22
                 Re: UTF-8でお知らせの文字化け修正 ramrun 2007/4/23 15:46
                 » Re: UTF-8でお知らせの文字化け修正 nanasess 2007/4/23 17:49
                     Re: UTF-8でお知らせの文字化け修正 ramrun 2007/4/24 12:32
                       Re: UTF-8でお知らせの文字化け修正 nanasess 2007/4/24 17:05
                         Re: UTF-8でお知らせの文字化け修正 ramrun 2007/4/26 0:13

 



ログイン


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

統計情報

総メンバー数は88,954名です
総投稿数は110,019件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1296
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.