MySQLと文字コードに関する質問です。

MySQLとPHPを使って掲示板を作成しようとしています。
HTMLファイルはUTF-8で作成し、フォームからMySQLへ渡される日本語のデータもUTF-8になっています。
また、ApacheとMySQLの設定もUTF-8になっています。

ここまではきちんと確認しているのですが、なぜかデータをMySQLへ渡すと文字化けしてしまうという問題が起こっています。
select文でデータを見ると「??」で表示されます。このデータを抽出してHTMLで表示しても、やはり「??」と表示されます。

こういった場合、どこに問題点がありそうでしょうか?
また、何か確認するポイントなどはありますでしょうか?
よろしくお願い致します。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2009/02/01 10:12:31
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:pahoo No.1

回答回数5960ベストアンサー獲得回数633

ポイント60pt

PHP の設定は UTF-8 になっていますか?


phi.ini の設定が下記のようになっているかどうかご確認ください。

オプション
default_charset UTF-8
mbstring.internal_encoding UTF-8
mbstring.http_input pass
mbstring.http_output pass
mbstring.encoding_translation ON

参考サイト

id:loveylayer

pahooさん、前回に引き続きお返事どうもありがとうございます。


質問したばかりですが、今やっと、自己解決に至りました。。

HTMLファイル自体の文字コードに問題があったようです。

php.iniの設定はきちんとできていました。


はじめて文字コードについて考える良い機会になりました。

どうもありがとうございました。

2009/02/01 10:12:18

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

  • [MySQL+PHP]とにかくunicodeに masomi79の日記 2009-03-24 16:18:15
    :::::PHPのバージョン::::: 4.3.9 :::::MySQL のバージョン::::: mysqladmin version mysqladmin Ver 8.41 Distrib 4.1.22, for redhat-linux-gnu on i386 Server version4.1.22 Protocol version10 ConnectionLocalhost via UNIX socket UNIX socket/var/lib/m
「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません