このクエリを実行していることに気付きました...mysql_query('SET CHARACTER SET utf8');
これに変更してみてください...
mysql_query("SET NAMES 'utf8'");
これにより、接続がUTF-8であることが保証されます。
また、この記事の項目のリストを確認してみてください... http:/ /blog.loftdigital.com/blog/php-utf-8-チートシート
これは、サイト/アプリケーションでUTF-8を前面から背面まで使用していることを確認するために必要な手順をまとめたものですが、要約すると次のようになります。
- PHPのmbstring拡張子があり、
mb_internal_encoding('UTF-8');
があることを確認してください スクリプトで設定します。 - データベースに接続した後、このMySQLクエリを実行していることを確認してください
mysql_query("SET NAMES 'utf8'");
これにより、接続がUTF-8になります。 - 出力のHTTPヘッダーを設定します...
header('Content-type: text/html; charset=UTF-8');
。mb_internal_encoding()
を設定している場合、これは必要ないようです。 上記ですが、デバッグに役立ちます - HTMLページの出力エンコーディングが設定されていることを確認してください...
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />