• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:文字化けが発生する)

文字化けが発生する

このQ&Aのポイント
  • 文字化けが発生する原因として、Apache 2.0.54とPHP 5.0.4およびMySQL 4.1.14が使用されたテスト環境で、文字コードの統一が行われていないことが挙げられます。テストデータがUTF-8に変換されていないため、PHPスクリプトでデータが正しく表示されず、文字化けが発生してしまいます。
  • 文字化けの原因は、PHPスクリプトのデータ部分が「?」に変わってしまうことです。ブラウザの文字コードを変えても解決しないため、データ部分のエンコードを調べてみると、「ASCII」になっていました。MySQLの環境変数のcharacter関係の変数はすべてUTF-8に設定されています。
  • データをUTF-8で出力するには、テストデータをUTF-8に変換してからMySQL 4.1.14にインポートする必要があります。また、PHPスクリプトでデータを表示する際に、適切なエンコーディングを行う必要があります。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

ご自身のPHPスクリプトからは、 MySQL 4.1.14に接続直後に、 "SET NAMES utf8;" というSQLを発行すれば 解決すると思います。 参考URLは、MySQLユーザ会のサイトです。 MySQL4.1の文字化けについては、ここのFAQの 説明が分かりやすいです。

参考URL:
http://www.mysql.gr.jp/
potch
質問者

お礼

レスありがとうございます。(遅れてごめんなさい) "SET NAMES utf8" を使ったところ、きちんと表示できました。一度、ユーザ会のFAQは見たのですが、"SET NAMES ..."の部分は見落としていました・・・。

関連するQ&A