・phpMyAdminでINSERTしたデータはphpMyAdmin上で問題なく表示される
・PHPのスクリプトからINSERTしてSELECT文で取り出してきて表示させると問題ない。
・phpMyAdminでINSERTしたデータをPHPのスクリプトで取り出してきて表示させると文字化けする
・PHPのスクリプトからINSERTしたデータをphpMyAdmin上で表示させると文字化けする
となるので、どうもMySQLの文字コード設定がうまくいってない?っぽい。MySQLの設定変えてみようにも、レンタルサーバーなので、my.iniをいじれない。さて困ったと思ったら、同じ現象で困った方がいたようで、解決方法が書いてあった。
さくらインターネットでphpMyAdmin上でだけ文字化けする場合
http://notitle-goy.seesaa.net/article/232328840.html
結論から言うと、MySQLの接続の文字コードを直して文字化けを解消するにはMySQLへの接続の後、mysql_set_charset()で文字セットをutf-8にすればOK。
ただ、勉強に使っている本を読み進んでいくと、
mysql_なんちゃらなどの関数は使用せず、PDOクラスを利用することが推奨されているなんて書いてある。でPDOクラスを使ってみると、同じ現象。まあ、起こってることは同じなんだろうけど、ちょっとググッてみたけど、ある意味環境依存のところで時間を食うのは今回の勉強の趣旨ではないので、いったん放置。