2006年7月12日

[PHP-users 29733] Re:Q.西や表などの一部の漢字がPOSTできないのです。

高橋です。> 検索フォームを作成中なのですが
> 「西」 「表」 「西表」という漢字を入力するとPOSTできないのです。
>
> 「西」は何も入力していない状態:namae like '%%' になります。
> 「表」は「\0」になってしまいます:namae like '%\0%'
>
> 「表示」や、「西日本」、「西表市」などのように他の文字を付け足したり、
> 「表 」などとスペースを付け足した場合はPOSTできます:namae like '%表 %'

>
> 色々な漢字で試してみましたが、POSTできるのですが
> よりによって、おそらく検索に使う確率の多いであろうこの二文字なのです・・
>
> (この二文字はフォームからのMysqlへの書き込みは正常です)
>
> ■現在のテスト環境
> Windows2000、Apache1.3.33 php4.4.1 Mysql4.0.24
>
> スクリプトの保存、ブラウザ出力はEUC-JPで統一しています

私の環境はWindowsXPhome Apache2.0.54 php5.1.4 MySQL4.0.24と若干違います
が、同じくEUC-JPで統一しています。
自身の環境は大丈夫。と思っていたのですが、試しにPOSTした文字を表示するプ
ログラムを作って動作確認したところ、言われているように「西」とか「表」で
は何も表示しないもしくは文字化けします。ちなみに「星」という字もダメでし
た。(今まで部内からクレームがなかったのは、なぜだろう? 笑 )

いろいろと設定を変えていたら、直ったみたいなので参考程度にして下さい。
なぜそうなるのかは分かりません。これから調べるつもりでいます。

PHP.INI
[mbstring]
変更前
mbstring.encoding_translation = On
変更後
mbstring.encoding_translation = Off

どうでしょう?


_______________________________________________
PHP-users mailing list PHP-users@xxxxx
http://ns1.php.gr.jp/mailman/listinfo/php-users
PHP初心者のためのページ - 質問する前にはこちらをお読みください
http://www.php.gr.jp/php/novice.php3

投稿者 xml-rpc : 2006年7月12日 16:58
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/39433
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。