質問: mysql+php文字化け phpからmysqlを使っています。 mysqlもphpも文字コードはutf8を使っているのですが、phpmyadminから入力した日本語を普通に読み出すと文字化けして「??????」になってしまいます。また、自作コードからの日本語のinsertもできません。 しかし、「set character set utf8」を先に実行しておくといずれも上手くいきます。 これは一体どういうことなのでしょうか? そもそも全てutf8で統一しているつもりなのですが、mysqlかクライアントのどちらかで他のコードが使われているということなのでしょうか? mysqlはstatusなどを見てもutf8になっているので、どちらかと言えばクライアントの方が臭うのですが、よくわかりません。 どうか知恵をおかしください。
回答: phpmyadminの文字コードの設定が、適切に行われていないのでは? phpmyadminからsqlを入力できる状態で、 show variables like '%char%' の結果を確認してみてください。