[PHP-users 24123] Re: UTF-8 のデータを hiddun 属性で POST すると、データが EUC-JP になる
Masanori Kobayashi
markun @ leo.bekkoame.ne.jp
2005年 1月 13日 (木) 14:47:53 JST
濱井様
みっともない入力ミスご指摘ありがとうございます。
プログラム側ではちゃんとhiddenと記述しております。
それにしても恥ずかしい・・・。
とりあえず解決というかなんと言うか、誤動作しなくなりました。
対策は呼び出し元となるhtmlを出力するスクリプトを動作させるときの内部処理
コードをUTF-8にしました。
呼び出し元スクリプトは単純にUTF-8で記述されたhtmlにデータを埋め込んでUTF
-8で出力するだけだったので、内部処理コードについては特に気にせず動作させ
ていました。
それにしても出力されたUTF-8で記述されたhtmlから呼び出されるスクリプト
が、呼び出し元htmlを生成するスクリプトの内部処理コードに影響されるという
ことが納得いかないこのごろです。
◆誤動作していた状態◆--------------------------------------------------
呼び出し元スクリプトの設定
内部処理コード EUC-JP ← php.iniのデフォルト設定
出力コード pass
UTF-8で記述したテンプレートに必要な情報を埋め込んで「表示用html」を出力
「表示用html」から呼ばれるスクリプト
内部処理コード UTF-8 ← mb_internal_encoding()で設定
出力コード pass
UTF-8で記述したテンプレートに必要な情報を埋め込んで「表示用html」を出力
------------------------------------------------------------------------
◆正しく動作する状態◆--------------------------------------------------
呼び出し元スクリプトの設定
内部処理コード UTF-8 ← mb_internal_encoding()で設定
出力コード pass
UTF-8で記述したテンプレートに必要な情報を埋め込んで「表示用html」を出力
「表示用html」から呼ばれるスクリプト
内部処理コード UTF-8 ← mb_internal_encoding()で設定
出力コード pass
UTF-8で記述したテンプレートに必要な情報を埋め込んで「表示用html」を出力
------------------------------------------------------------------------
では。
--
_/_/ Masanori Kobayashi
_/_/ mailto:markun @ leo.bekkoame.ne.jp
_/_/ mailto:PXK11641 @ nifty.com
PHP-users メーリングリストの案内