プロが教えるわが家の防犯対策術!

様々なサイトで調べてみたのですが、どうしても文字化けの
解決になりませんでした。
MySQLからデータを取得し、ブラウザへ表示するとデータだけ
文字化けになってしまいます。
現在の設定は下記の通りになっております。
お分かりになる方、どうぞ宜しくお願い致します。

※PHPのソースコードはEUS、MySQLはSjis


【php.ini】
output_buffering = On
output_handler = mb_output_handler
magic_quotes_gpc = Off
default_charset = Shift_JIS
extension_dir = C:/php/extensions
extension=php_mbstring.dll
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = SJIS
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none


【my.ini】
#This File was made using the WinMySQLAdmin 1.4 Tool
#2006/04/28 18:18:42

#Uncomment or Add only the keys that you know how works.
#Read the MySQL Manual for instructions

[mysqld]
basedir=C:/mysql
#bind-address=172.20.3.162
datadir=C:/mysql/data
#language=C:/mysql/share/your language directory
#slow query log#=
#tmpdir#=
#port=3306
#set-variable=key_buffer=16M
default-character-set=sjis
language=japanese
[mysql]
default-character-set=sjis
[mysqldump]
default-character-set=sjis
[WinMySQLadmin]
Server=C:/mysql/bin/mysqld-nt.exe
user=root
password=root
default-character-set=sjis

A 回答 (2件)

がると申します。

ものすごく「アレ」な発言で恐縮ですが。
本質的に「言語挙動をiniファイルに頼る」のはちとどんなもんかと思います(無論「PHPが」それを推奨はしているのですが)。
ですので、各々の入力に対して、ご自身で「プログラム中で」きちんと文字コード変換を行ってみる、というのはどうでしょうか?
もし趣味で日曜プログラミングをなさっているならちと手間が大きいかもしれないのですが。
もしお仕事でなさっているんでしたら、個人的には「必須」だと思います。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
文字化けは自己解決しました。
単純にデータの登録時にEUCにしなかったのが原因でした。
私の確認ミスでした。。。すみません。
本当にありがとうございました。

お礼日時:2006/05/02 08:57

MySQLのバージョンは?


→フォルダの名前から、4.1以下であることは分かるが。。。

PHPのバージョンは?
→フォルダの名前から、PHP4だと想像できるが。。。

日本MySQLユーザ会のFAQに、文字化けの記載がありますが、確認済みですか?

「set names sjis」を最初に実行してますか?

my.iniの指定は有効になっていますか?
→c:\windows\my.iniやc:\my.cnfの指定が優先されます。

参考URL:http://www.mysql.gr.jp/
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
申し訳ありませんでした、肝心な情報をお教えするのを忘れていました。

PHP5.0
MySQL4.0

ですが、文字化けは自己解決しました。
単純にデータの登録時にEUCにしなかったのが原因でした。
本当にありがとうございました。

お礼日時:2006/05/02 08:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!