何かの設定かと思い、 mysql> SHOW VARIABLES LIKE 'char%';でチェックし比べてみたところ 正常のものは character set client utf8 character set connection utf8 character set database utf8 なのに
文字化けするほうは character set client latin1 character set connection latin1 character set database latin1 でした。文字コードのデフォルトが違うからだと思い、ググって見たところ、 結構よくある問題で、my.cnf でデフォルト文字設定を変更すると解決するとありました。
myadminより、SHOW VARIABLES LIKE 'char%';でキャラクターチェック
character set client latin1
character set connection latin1
(自分のサイトはutf8で作成中)
myadminに、直接set name utf8; SHOW VARIABLES LIKE 'char%';でキャラクターチェック
character set client utf8
character set connection utf8
になったが、他のクエリーを実行するとすぐまた、自動でlatin1に戻る。
(phpファイルのheader()にて $sql = "SET NAMES utf8";してクエリを実行している)
データを入れるphpページのinsert命令前に set names utf8をいれ、クエリーさせる。
→文字化け。
myadminより、ダイレクトにset name utf8とinsert文を入れてみる。
データは同様に文字化け