文字化け 『phpMyAdmin』


*******************************************
環境
 ・Windows XP Home Edition Version 2002 SP2
  ・Apache2.24
  ・PHP5.23
 ・Mysql5.0
  ・phpMyAdmin3.1.0
*******************************************

前回 「mcrypt の設定」まで終了していよいよ
phpMyAdminへアクセスできるようになりました。

私はphpを「euc-jp」で作成していて、phpのデフォルト文字コードを「euc-jp」にしているので、
MySQLの接続照合順序を「ujis_japanese_ci」に設定してます。
テーブルの照合順序も「ujis_japanese_ci」にしました。
ホスティングサービス(レンタルサーバ)では、mysql5では「UTF-8」が標準になっていることが多いので
ローカル環境でも「mysql5」では標準に設定しています。
(※mysql4はutf8未対応だが、mysql5はutf8が標準)
この環境で、phpでmysqlへの書き込み、読み込みを行うと文字化けを起こしてしまいました。

mysqlの設定や、phpの設定を変更するのではなく今回はphpスクリプトで対策しました。

<?php
$db = mysql_connect('host', 'user','password');
mysql_query('SET NAMES ujis;');

DBに接続した後に、SET NAMESクエリを発行します。
これでmysqlの文字コードを変更することができます。
「SET NAMES ujis」でmysqlの文字コードを「euc-jp」にすることにより、
phpやテーブル設定など全て「euc-jp」で統一できた為、文字化けが直りました。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です