2006年3月9日木曜日

mysqlとphpの連携で文字化け。skip-character-set-client-handshakeで解消

だいぶ使い慣れてきたMySQL5.0。

が、しかし!油断していたら文字化けが発生!

新しいサーバーにmysqlとphp、apacheを設置し、いつものようにアプリ開発しようと思ったが、mysqlからselectしてphpでデータ出力する際、日本語が「????」という感じで、はてなマークの羅列になってしまう。

こんな現象初めてだ。。。
しばらく悩んだけど、google先生が解決してくれた。「skip-character-set-client-handshake」というおまじないで文字化け問題解消。my.cnfの[mysqld]の項に以下のような感じで一行追加。

[mysqld]
skip-character-set-client-handshake


mysqldをリスタートしたら日本語が表示できるようになりました。よかったよかった。

ちなみに「skip-character-set-client-handshake」は、『サーバーの文字コード設定をクライアントでもそのまま使う』という意味だとか。

http://puchiko.lowtech.ne.jp/?itemid=349&catid=27

1 件のコメント:

  1. とあるエンジニア2008年1月28日 0:54

    明日プレリリースのサイト設定で困っている際、このページの情報が大変役に立ちました。
    情報ありがとうございました。

    返信削除