ファーストサーバで、PHPフォーム
ファーストサーバで、PHPフォームを設置しようと、文字化けの件で奮闘したときのメモ。
鯖は、ギガント。
PHP Version 5.2.11
mbstringの初期値
mbstring.detect_order = auto
mbstring.encoding_translation = On
mbstring.func_overload = 0
mbstring.http_input = auto
mbstring.http_output = pass
mbstring.internal_encoding = EUC-JP
mbstring.language = Japanese
mbstring.substitute_character = “設定値なし”
『header関数を一番先頭行に』もってきて、
header(“Content-Type:text/html; charset=UTF-8”);
ini_set(“mbstring.internal_encoding”,”UTF-8″);
mb_language(“uni”);
mb_internal_encoding(“UTF-8”);
ちゃんと送信は完了するが・・・やはり化ける。
htaccessで制御するしかないとのことで、
・mbstring.encoding_translationをOffにする
・Offにするときはphp.iniを変更するか、php.iniが変更できないときはhttpd.confか.htaccessで設定。
レンタルサーバだとhtaccessしかない。
php_flag mbstring.encoding_translation off
php_value default_charset “UTF-8”
う〜ん・・・化けるという前に、鯖エラー。
よく仕様を調べると、
PHPを利用する際に、.htaccessでサーバの挙動を制御することは可能です。
「.htaccess」での設定変更は、PHP5(DSO版) でのみ有効
とかいてある。
で、そのとおりにやると、なんということでしょう!
うまくいったじゃないですか。
DSO版、Apacheの内蔵モード(モジュール)で動作させないとダメということか!
まだまだ修行が足りないボクです。