• ベストアンサー

PHP でMysqlを使用して日本語を登録する。

すいません、教えて下さい。現在、PHPとMYSQLを連携させてデーターベースを構築中なのですが、日本語が登録できません。mysqlモニタにてinsert 文で登録すると日本語が登録できるのですが、phpを経由すると登録できないのです。phpから、既存のデータベースを呼び出すと日本語のところがすべて文字化けしてしまいます。ちなみにmysqlのmy.iniの設定はsjisにしてあります。ujisにするとmysqlモニタからでも日本語が登録できなくなります。どこの設定がいけないのでしょうか?ちなみにWindows Vista php5.1 mysql 5.1 です。

質問者が選んだベストアンサー

  • ベストアンサー
  • mpx
  • ベストアンサー率71% (149/209)
回答No.1

>> どこの設定がいけないのでしょうか? 設定手順の設定を開示していないのでどこの処理がまずいかは分かりませんが、単にDBの文字セット設定とSQLで書込むコードに違いがあるからでしょう。 DBへのSQL発行前に mysql_set_charset で正しい文字コードを設定すればなおると思います http://jp2.php.net/mysql_set_charset

yappuri
質問者

お礼

mpx様 早速のご回答ありがとうございました。早速やってみたところ、 mysql_set_charsetdehaでは、だめだったのですが、関連の命令文 mysql_query("SET NAMES 'utf8'"); で、無事解決いたしました。 本当にありがとうございました。丸1日以上かかってようやっと解決です。解決した瞬間泣けてきました。また、よろしくお願いします。