重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

指定した文字列を元にデータベースよりデータを検索する
プログラムを作成したんですが、下記のような不具合が
発生します。

1.例として"ABC DEF"というようにスペースが間に入っている文字列をURLの後に"http://www.aaa.com/test.php?test=ABC DEF"という風にして送ってやり、test.php側で
$_GET["test"]として受け取った時に"ABC"となりスペースの前で区切られてしまいます。

2.HTML上のテキストボックスに"ABC CDF"という風に入力してtest.phpに送った場合、test.phpでは文字化けされた状態で受け取ってしまう。

3.特定はできませんが、日本語文字列でも文字化けするものとしないものがあります。

こういった現象から正しく検索処理が行えません。
ちなみに文字コードはすべてEUCで統一しています。

色々調べてはみたんですが、原因がよくわかりません。
解決策等ご存知でしたら教えていただけますよう
宜しくお願い致します。

A 回答 (2件)

こちらをご覧ください。

CGIデータのエンコードはスペース文字は使えないようです。できれば日本語も使わない方が良さそうです。

参考URL:http://tohoho.wakusei.ne.jp/wwwcgi3.htm#CgiEncode
    • good
    • 0
この回答へのお礼

UrlEncode,UrlDecode関数で対応できました。
早速ご回答いただきありがとうございました。

教えていただいたサイトも参考にさせていただきます!

お礼日時:2003/07/03 14:34

すみません、検索文字列でしたよね。


ブラウザは半角スペースを+に変換してからデータを渡します。受け側のCGIスクリプトでのデコードの方法を見直してみるのが良さそうです。
    • good
    • 0

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