文字化けについて。

php5
MySQL4
Apache2
Windows2000
以上の環境でHPをしています。
当初はSJISで製作しておりましたが、
海外でも見ることができるようUTF-8
に変更しようとしたところ文字化けが発生しました。
特に文字化けが発生する個所は、
HTMLからsession.handlerをもちいて、MySQLに保存したデータを引き出す際に起こります。

設定は以下のようになっています。
my.ini
[mysqld]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqldump]
default-character-set=utf8

php.ini
output_buffering = On
output_handler = mb_output_handler
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
mbstring.http_output = UTF-8
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none;
extension=php_mbstring.dll
default_charset = ”UTF-8”
よろしくお願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:vinaka No.1

回答回数232ベストアンサー獲得回数1

ポイント30pt

自分は海外のレンタルサーバーを使用していますが、PHPでデータベース接続を行った後に

mysql_query(”SET NAMES SJIS”)

をいれて、日本語SJISにしています。

文字化けも無くうまくいきます。

id:konorinori

ありがとうございます。

試してみます。

2006/02/06 14:29:10
id:Asuca No.2

回答回数281ベストアンサー獲得回数4

ポイント50pt

URLはダミーです


引き出したデータをエンコードしては?


$contents = ”引き出したデータ”;

$contents = mb_convert_encoding($contents, ”UTF-8”, ”auto”);

id:konorinori

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

解決いたしました。

2006/02/06 14:39:35

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

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

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

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

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