プロが教える店舗&オフィスのセキュリティ対策術

PHPから中国語ファイルを読み込み、MySQLにデータを保存する。

PHPで中国語が書いてあるtxtファイルを読み込み、データベースに登録させたいのですが中国語が「?」になってしまいます。

txtファイルは中国語のエンコードGB2312で保存し、PHPでsql文をechoさせるとブラウザ(ローカル)上ではちゃんと中国語で表示されています。
しかし、phpmyadminでカラムの中身を見てみると中国語であるはずの部分が全て「?」と表示されてしまいます。
色々試してみてもどうにもなりません。
大変恐縮ですがどのようにすれば中国語をファイル読み込みからデータベースに入れる事ができるのか、ご教授お願い致します。

ちなみに、phpmyadminから中国語を含むSQL文を直接入力すると中国語でちゃんカラムに入れる事はできました。

A 回答 (2件)

こんばんは。



MySQL側の文字コードはどうなってますか?

この回答への補足

ご連絡有難う御座います。

現在はutf8_general_ciです。
gb2312_chinese_ci等も試してみましたが、上手く行きませんでした。

補足日時:2010/08/18 20:53
    • good
    • 0
この回答へのお礼

テキストファイル、とMysqlの設定をutf-8に変更したら上手く出来ました!

大変お恥ずかしいのですが、私の勘違いでした。
申し訳ありません。

有難うございました。

お礼日時:2010/08/19 18:48

こんにちは。



よくわかりませんが、文字コードの問題かと・・・。
ファイルが「GB2312」。
PHPの内部文字コード(internal_encoding)が不明だけど、多分UTF-8?
MySQLがUTF-8。

なので、ファイルを取り込んでからSQLで入れる前にconvert_encodingしないと駄目なのでは?
    • good
    • 0
この回答へのお礼

テキストファイル、とMysqlの設定をutf-8に変更したら上手く出来ました!

大変お恥ずかしいのですが、私の勘違いでした。
申し訳ありません。

有難うございました。

お礼日時:2010/08/19 18:50

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

関連するカテゴリからQ&Aを探す