- ベストアンサー
Windows環境でのPHP+MySQL+Apacheの文字化け
様々なサイトで調べてみたのですが、どうしても文字化けの 解決になりませんでした。 MySQLからデータを取得し、ブラウザへ表示するとデータだけ 文字化けになってしまいます。 現在の設定は下記の通りになっております。 お分かりになる方、どうぞ宜しくお願い致します。 ※PHPのソースコードはEUS、MySQLはSjis 【php.ini】 output_buffering = On output_handler = mb_output_handler magic_quotes_gpc = Off default_charset = Shift_JIS extension_dir = C:/php/extensions extension=php_mbstring.dll mbstring.language = Japanese mbstring.internal_encoding = EUC-JP mbstring.http_input = auto mbstring.http_output = SJIS mbstring.encoding_translation = On mbstring.detect_order = auto mbstring.substitute_character = none 【my.ini】 #This File was made using the WinMySQLAdmin 1.4 Tool #2006/04/28 18:18:42 #Uncomment or Add only the keys that you know how works. #Read the MySQL Manual for instructions [mysqld] basedir=C:/mysql #bind-address=172.20.3.162 datadir=C:/mysql/data #language=C:/mysql/share/your language directory #slow query log#= #tmpdir#= #port=3306 #set-variable=key_buffer=16M default-character-set=sjis language=japanese [mysql] default-character-set=sjis [mysqldump] default-character-set=sjis [WinMySQLadmin] Server=C:/mysql/bin/mysqld-nt.exe user=root password=root default-character-set=sjis
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
がると申します。ものすごく「アレ」な発言で恐縮ですが。 本質的に「言語挙動をiniファイルに頼る」のはちとどんなもんかと思います(無論「PHPが」それを推奨はしているのですが)。 ですので、各々の入力に対して、ご自身で「プログラム中で」きちんと文字コード変換を行ってみる、というのはどうでしょうか? もし趣味で日曜プログラミングをなさっているならちと手間が大きいかもしれないのですが。 もしお仕事でなさっているんでしたら、個人的には「必須」だと思います。
その他の回答 (1)
- chukenkenkou
- ベストアンサー率43% (833/1926)
MySQLのバージョンは? →フォルダの名前から、4.1以下であることは分かるが。。。 PHPのバージョンは? →フォルダの名前から、PHP4だと想像できるが。。。 日本MySQLユーザ会のFAQに、文字化けの記載がありますが、確認済みですか? 「set names sjis」を最初に実行してますか? my.iniの指定は有効になっていますか? →c:\windows\my.iniやc:\my.cnfの指定が優先されます。
- 参考URL:
- http://www.mysql.gr.jp/
お礼
ご回答ありがとうございました。 申し訳ありませんでした、肝心な情報をお教えするのを忘れていました。 PHP5.0 MySQL4.0 ですが、文字化けは自己解決しました。 単純にデータの登録時にEUCにしなかったのが原因でした。 本当にありがとうございました。
お礼
ご回答ありがとうございました。 文字化けは自己解決しました。 単純にデータの登録時にEUCにしなかったのが原因でした。 私の確認ミスでした。。。すみません。 本当にありがとうございました。