[pgsql-jp: 31921] Re: 日本語データがINSERT できない
Keiji Mitsubuchi
keiji @ nwco.com
2004年 1月 7日 (水) 17:43:55 JST
三淵@NWCです。
>
> > と言うことは、PHPのプログラムは
> > SJISで書いているのではないでしょうか?
> ご指摘の通り、PHPのプログラムはSJISで記述していましたので、
> (プログラムそのものの文字コードも気をつけないと
> いけないのですね、勉強になりました)
> それをEUC-JPで書き直し、再度試してみましたところ、
>
> 今度はDBに登録されたデータが、
> EUC-JPをSJISで変換した状態の文字
> (研磨剤製品 → クヲヒ蘯゛タスノハ)
> (文字化けするかもしれないので全角カナにしてあります、実際は半角カナ)
> となってINSERTされてしまっています。
psqlで、データを確認したらと言うことでしょうか?
それとも、PHPで吐き出したデータを
ブラウザーで見たときでしょうか?
ちなみに、PHPは、EUC-JPに変更したとのことですが
HTMLのMeta等charset の設定も変えましたでしょうか?
> 先の発言にも書いていますがPHP,PostgresSQLの文字コードは
> EUC-JPとしていると思うのですが・・・
>
> ここはPostgreSQLのMLなので気が引けるのですが
> 一応php.iniのmbstringのところを以下に載せておきます。
>
> [mbstring]
> mbstring.internal_encoding = EUC-JP
> mbstring.http_input = auto
> mbstring.http_output = EUC-JP
> mbstring.detect_order = auto
> mbstring.substitute_character = none;
>
> どなたかご助力いただけると有りがたいです。
>
> 完全にPHP側が問題ということでしたら、
> そちらのほうに質問を移動しますのでご指摘ください。
確かに、PHPの問題かもしれません
まずは、PHPのコード変換で
色々なコードに変換してテストしてみてはいかがでしょう?
仕組みがもう少し見えてくると思います。
mbstring.language = Japanese
mbstring.encoding_translation = On
がないかも、無くてもいいのな?
ご参考まで。
pgsql-jp メーリングリストの案内