• ベストアンサー

URLエンコードされなかったパラメータを受け取る方

Apacheのアクセスログに、URLエンコードされていない変数が正しく書き込まれているのですが、 PHPでがURLエンコードされていない変数が受け取れませんでした。 URLエンコードされずに送信されたデータはPHPでは受け取れないのでしょうか?

  • php4
  • お礼率42% (373/888)
  • PHP
  • 回答数2
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

>受け取れない というより、受け取るに値しない(偽装や攻撃やいやがらせ)ということで 弾いた方がよいでしょう。 無駄に評価をしてデータを取ろうとするとセキュリティ上思わぬ問題に なりかねません。

php4
質問者

お礼

結局、PHPで受け取る事ができず、送り元にurlencodeしてもらうようお願いすることにしました。

その他の回答 (1)

  • tany180sx
  • ベストアンサー率63% (239/379)
回答No.1

よくわかんないですが、$_SERVER['QUERY_STRING'] で取得できませんか?

関連するQ&A

  • フォーム送信とURLエンコードについて

    CGI&PHP初心者です。 フォームのデータ送信とURLエンコードについて、お尋ねします。 method="GET" のフォームで、検索フォームをつくりたいとおもっています。 日本語も含めた検索語をフォーム送信したいと考えていますが、 送信の結果、エンコードされずにそのままブラウザのURL欄に入力した日本語が表示されてしまいます。 (ただ、メモ帳などにURLをコピーペーストするとURLエンコードがされているようです。) googleでは検索結果のアドレス欄にURLエンコードされた文字列がでているが、 同じように検索結果のアドレス欄にはURLエンコードされた文字列をだしたい。 URLに日本語をださずにURLエンコードさせた文字列を表示させるには、 どうすればいいのでしょうか? 補足:できるかぎり検索処理が重くならないにしたいと思います。     開発環境PHP&MySQL     動作環境Chrome のバージョン 38.0

    • ベストアンサー
    • CGI
  • ApacheのURLエンコード

    URLエンコードで悩んでおります。 LinuxのApache1.3系では URLエンコードはGETで正しく処理できますが、 WindwosのApache2.0系では正しい値が取得できません。 ちなみにPOSTは漢字でも両方処理できました。 URLエンコードでApacheの設定で注意しないといけない点がありましたら 教えて下さい。 はてな ではLinuxのようです。 Apache/1.3.27 (Unix) (Vine/Linux) mod_perl/1.29 http://d.hatena.ne.jp/keyword/%c5%d4%b1%c4%c2%e7%b9%be%b8%cd%c0%fe?kid=930

  • URLエンコードされたデータを戻すには

    POSTでCGIに渡す文字列はURLエンコードされていて、元に戻すにはデコードが必要ですが、もともとURLエンコードされたデータをデコードしたデータにできないでしょうか。 普通は、 読める文字→URLエンコード→CGIによる処理→URLデコード→読める文字 ですが、 もとのデータがURLエンコードされた状態だと、 URLエンコードされた文字→URLエンコード→CGIによるURLデコード→URLエンコードされた文字 となってしまいます。 たとえば、「%82%a0%82%a0%82%a0」というデータ形式から、「あああ」というデータを得たいのです。

  • ■URLのエンコードについて

    ■URLのエンコードについて お世話になります。 ■URLのエンコードについて 下記PHPで書いてありますが、google、Firefoxでは正しく移動(表示)できますが IEでは正しく表示できません。 $body .= "<A href='search.php?maker=$col[maker]'>" . substr($col[maker], 0, 50) ."</A> " . "($col[cnt]件)"; 文字コードはEUC-JPですが IEでもできるように教えていただけないでしょうか? 大変困っております。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • postやgetで得られたパラメタのエンコードを変換したい

    Phpの内部エンコードとhtmlの表示文字コードが異なる場合、 そのformから送られる変数をphpで受けた場合、当然文字化けしてしまいます。 これを回避したいので、 $_POST や $_GET の文字列のエンコードを変換したいのですが(変数名の予想はできない) 受ける変数の文字コードを指定する方法が分かりません。 ご存知の方はご教授お願いいたします。

    • ベストアンサー
    • PHP
  • preg_replace内+URLエンコード

    現在、 $hogehoge=preg_replace( "/([^,\(\)]+)/" , '<a href="./hoge.php?hoge=\1">\1</a>', $hoge); このように変数をそのままリンク処理しております。 現在はこの変数に1バイト文字のみしか入っていないのですが、今後2バイト文字も取り扱おうつもりですので、urlencode関数を使いURLエンコードを組み込みたく思います。 このままのカタチで組み込むことは可能でしょうか?

    • 締切済み
    • PHP
  • URLのエンコードについて

    JavaScriptで、JSON形式で渡ってきたデータを読んで、一部、文字列を結合して URLを作るんですが、その際のエンコードは encUrl= 'http://test.com/' + encodeURIComponent(xxx) + '/'; (xxxがjsonからきたデータ) で大丈夫でしょうか? たとえば.NETで言うところのHttpUtility.UrlEncodeと同じことがしたいのですが、 URIエンコードだとたぶん違いますよね…。 何を使えばUrlEncodeが出来るのでしょうか。

  • headerで飛ばすときにURLエンコードを有効に

    headerでほかのサイトに飛ばすとき、 header("Location: http://localhost/nani/success.php?tour=$_GET[tour]"); こんな感じでクエリを飛ばしているのですが、URLエンコーディングをする方法がわかりません。 ほかの変数($data)に入れるまえにurlencode($_GET[tour])として入れ替えて、 ?tour=$_GET[tour]の部分を?tour=$dataとしたのですができません。 ご存知の方いらっしゃいましたら教えていただけませんでしょうか?

    • ベストアンサー
    • PHP
  • URLエンコードについて

    「 † 」 の文字をUTF-8 でURLエンコードした時の値が2種類あるんでしょうか。 以下の2つのURLエンコードした文字を %EF%BC%8D %E2%80%A0 URLエンコード/ デコードの結果を出力してくれる こちらのサイトと https://www.tagindex.com/tool/url.html こちらのサイト https://tech-unlimited.com/urlencode.html で結果が異なるみたいです。 なぜこういった結果が異なる状況が生まれるのでしょうか そして正しいのはどちらなのでしょうか

  • URLエンコードするには

    C++でURLエンコードするためにはどうしたらよいのでしょうか?