結構、プロバイダーの MySql ってバージョン4系にあたる事が多かったのですが、今回のは5.0.27。
で、案の定文字化けではまりました。
character set client : utf8
character set connection : utf8
character set results : utf8
なんですけど、色んな関係があってPHP を EUC-JP で作っていたもので、データベースも EUC にしたんですけど、うまくいかないわけで・・・
で、PEAR DB のところで
$rs = $db->query("SET character_set_client = 'ujis'");
$rs = $db->query("SET character_set_connection = 'ujis'");
$rs = $db->query("SET character_set_results = 'ujis'");
なんてやって動く様になりました。
PHP.ini も my.cnf もさわれませんし、ましてはビルドもできませんし、これでまあよしとしました。
PHP はあまりわかっていないので、もっと良い方法があるのかもですけど。
しかし、便利な navicat(httpトンネルで使う) はダメなので、ntunnel_mysql.php を見てみようかと思っています。
MySql5ではまる
カテゴリ:
トラックバック(0)
このブログ記事を参照しているブログ一覧: MySql5ではまる
このブログ記事に対するトラックバックURL: http://www.tandemsite.com/mt/mt-tb.cgi/768
コメント(2)
コメントする
このブログ記事について
by WebServant
2008年11月
OnThisDay
My PhotoShare Page
My Flickr Page
JFC Links
Favorite links
Links by BLOGROLLING
Links by BlogPeople
emo
検索
最近のコメント
- m_hash さんから:こんにちはー おーやってみたらう
- Mr.Y さんから:MySQL4.1以降はサーバとは

MySQL4.1以降はサーバとは別にクライアントの文字コードが設定されているらしいのです
insert selectする前に
$rs = $db->query("SET NAMES ujis");
としておくと文字化けしないかと
$rs = $db->query("SET character_set_client = 'ujis'");
$rs = $db->query("SET character_set_connection = 'ujis'");
$rs = $db->query("SET character_set_results = 'ujis'");
これでもいいと思います
というより同じことですけど
こんにちはー
おーやってみたらうまくいきました。SET NAMES ってどこかで見たんですけど、意味がわからなかったので使わなかったんです。
ありがとうございます。