[PHP-users 31678] Re: MySQLでのエラーと文字化け

Napura napura @ sky.707.to
2007年 3月 14日 (水) 00:54:19 JST


YuGoさん、こんばんは

Napuraです。
状況を報告したく、フライングと思いながらよそ人のPCから送って
しまいました。すみませんでした。

> これは、latin1に存在しない文字コードが来た場合はエラーとして受け付けてい
> ないのではないでしょうか。
> たとえば、SJISの「あ」は文字コード0x82A0ですがlatin1にはそんな文字コード
> ないのでINSERTさせない。
> 
> 4.0までならこの状況でもINSERTできたのですが。
> 
> もっぱらWINDOWSがクライアントなら
> character_set_server cp932
> だめなら譲って
> character_set_server utf8
> に変えるのが得策と考えます。

データベースサーバーのほうを
変えるのが良策ですね。

mysql_query("ALTER TABLE regist_office_tbl CHARACTER SET utf8", $con)
mysql_query("SET NAMES utf8" , $con)

を行っても


character_set_client utf8 
character_set_connection utf8 
character_set_database latin1 
character_set_results utf8 
character_set_server latin1 
character_set_system utf8 
character_sets_dir /usr/share/mysql/charsets/ 

character_set_server は変えられないですし・・・
my.cnfの書き換えはサーバでないと出来ませんし。
MySQL 接続照合順序」を「sjis_japanese_ci」までは行ってもらいましたが
かわりません。
phpmyadminもアクセス可能としてもらいましたので
 
> もしかしてーデータベースサーバ、海外ですか。
国内ですが、他社のサーバーです。

my.cnfの書き換えはサーバでないと出来ませんし。
MySQL 接続照合順序」を「sjis_japanese_ci」までは行ってもらいましたが
かわりません。
phpmyadminもアクセス可能としてもらいましたが・・・

よろしくお願いいたします。



PHP-users メーリングリストの案内