phpmyadminでSQL文が文字化けする

社内サーバーでMySQLを動かして開発を行っているのですが、
しばらく他のPJでは、SQLServerを使用していました。

その為、CentoOSサーバーを放置していたところ
phpMyAdminが文字化けを起こしているではありませんか!

最初の表示は文字化けせずに日本語がちゃんと表示されている。
データベースを選択後、テーブルを選んで内容表示させても
ちゃんと表示されている(テーブル名は日本語)

でも、SQL文(SELECT文)から実行を行うと
テーブル名(日本語)が文字化けしてしまう!!?

エンコードは「utf-8」で統一(していたはず)

色々確認したのですが、phpmyadminで関連するのは
ここくらいかと・・・
MySQLの接続の照合順序:utf8_general_ci

検索すると色々と出てくるのですが、
色々有り過ぎてどこから手を付けていいのか・・・(・・;)

原因は、EC-CUBEをインストールする際
PHPのバージョンを上げた為、php.iniやらmy.cnfなどが
イニシャルされてしまったようです。

だから、そこを修正・追加してみました。

/etc/my.cnf
[mysqld]
character-set-server = utf8
init-connect = SET NAMES utf8
collation-server = utf8_general_ci

[mysql]   ← クライアント側
default-character-set = utf8

次に
php.ini
[mbstring]
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
mbstring.http_output = UTF-8
mbstring.detect_order = auto

apacheを再起動して、解決しました。

めでたしめでたし(^^♪

カテゴリー: システム開発 パーマリンク

コメントを残す

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


7 − two =

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください