• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:GETリクエストでURLを渡す時)

GETリクエストでURLを渡す時の注意点と解決方法

このQ&Aのポイント
  • GETリクエストで処理対象のURLを渡す際に注意する点と、解析するPHPでURLのパラメータとして&を含めて認識させる方法について解説します。
  • 処理対象URLに含まれる&が解析するPHPで新たなパラメータと認識される問題に直面した場合、URLのパラメータとして&を含めて認識させるためにはどうすれば良いのかを解説します。
  • GETリクエストで処理対象のURLを渡す際に、URLに含まれる&が解析するPHPで新たなパラメータとして認識されないようにする方法についてご紹介します。

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

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

urlencodeするのが妥当 <? $url="http://hugahuga.net/?hoge=hoge&huga=huga"; $url=urlencode($url); print "http://hogehoge.net/hoge.php?url=".$url; ?> 今回の場合だと /が「%3A」、:が「%2F」、?が「%3F」、&が「%26」、=が「%3D」に 変換されています。

php_goo_2010
質問者

お礼

この方法に全く気づきませんでした・・・。 ありがとうございます!

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Getリクエストによりダウンロードファイルを変える

    お世話になります。aizawa_naoと申します。 --------------------------------------- 環境、php5.2.0-8 apache2.2.4 debian --------------------------------------- 上記の環境で、簡単なphpスクリプトを作成しようと思っています。 ほとんど、phpの知識はないのですが、phpでgetリクエストを受け取り、 それをブラウザに出力することは出来ます。 これをサイトなどで、よく見るGetのパラメータにより、ダウンロードする ファイルを変化させたいのですが、どのような記述になるのでしょうか? 例)http://example.com/test.php?file=test.zip このようなリクエストがくると、test.zipをダウンロードし、   http://example.com/test.php?file=test2.zip とするとtest2.zipがダウンロードされるような仕組みをご教示いただければと思います。 初歩的な質問で申し訳ありませんが、宜しくお願いいたします。

    • ベストアンサー
    • PHP
  • getでurl

    プログラム初心者です getでパラメータを送る場合、パラメータの値を拡張子にしても大丈夫でしょうか?パラメータで渡す場合は単なる文字列になるのでしょうか? gif.php?gif=32.jpg よろしくお願いします

    • ベストアンサー
    • PHP
  • mod_rewriteでQUERYパラメータ数操作

    mod_rewriteで、静的化したいのですが、 QUERYパラメータ数が変化する場合には、どうすればよいでしょうか? ■現状 ▼URL /hoge.php?id=1 ▼.htaccess RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^hoge([0-9A-Za-z]+)\.html$ hoge.php?id=$1 [L] QUERYパラメータ数が一個のときは、 hoge1.htmlとなり、うまくいくのですが、 下記URLのようにQUERYパラメータがない場合があり、その場合に、エラーとなります(元のリンク自体も書き変えるので)。 /hoge.php QUERYパラメータ数が変化する(ない場合もある)時の.htaccessは、 どのように書けばよいのでしょうか? ・htaccess内で、条件分け可能なのでしょうか?

    • ベストアンサー
    • PHP
  • Requestの取り方、どちらが好ましい?

    C♯、ASP.NETでの開発です。 string test = Request["hoge"].ToString() という取り方をしている箇所があり、これだとパラメータとしてhogeが なかった時に落ちるので string test = Request.QueryString["hoge"]; にしようと思っています。 (単純に、なければ空白としたい) 取り方は違いますが、結局のところ(値があれば)同じものが 来るのでこの対応で問題ないと思っているのですが、問題ありましたら ご指摘いただけないでしょうか。

  • $_GETで取得する「&x=○&y=○」って何ですか?

    PHPでhtmlフォームから$_GETを取得しています。 name="hogehoge"、value="200712"としています。200712は2007年12月のことです。 そうすると、送信内容がURLに表示されますので、下記のようになると思います。  http://www.hoge.com/test.php?hogehoge=200712 ですが、最近このURLの後に「&x=101&y=13」というような文字列が付いていることに気づきました。  http://www.hoge.com/test.php?hogehoge=200712&x=101&y=13 この「&x=101&y=13」とは何の意味なのでしょうか?リクエストの度にこの二つの数値が変わります。 お手数ですがおわかりの方、よろしくお願いします。

    • ベストアンサー
    • PHP
  • ウェブマスターツールのURLの削除について

    ウェブマスターツールでURLを削除リクエストしたのですが、他のディレクトリも対象になるのでしょうか。 例 www.hoge.com/piyo/ piyoを削除リクエストした場合 www.hoge.com/fuga/ のサイトも対象になりますか。 よろしくお願いします。

    • ベストアンサー
    • CSS
  • GET変数をディレクトリのように表示する方法

    お世話になります。 phpでのお話ですが、通常GETで変数を持たせる場合は http://www.hoge.com/index.php?a=1&b=2 http://www.hoge.com/?a=1&b=2  というURLになるかと思います。 これをディレクトリの一部のように 下記のように表示している場合がありますが、 http://www.hoge.com/1/2/ これはどのようにすればできるのでしょうか? よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • GETで?の後ろのnameをなしにしたい

    【PHP】 GETでパラメータを取得したいです。 通常、 hoge.php?q=hogehoge ↓ echo $_GET["q"]; ↓ hogehoge などとなりますよね? でも、 hoge.php?hogehoge ↓ echo $_GET["●●"]; ↓ hogehoge 出力、みたいにしたいのですが.. hoge.php?hogehoge&mogemoge とか hoge.php?hogehoge&a=mogemoge とかできたら尚良いです。 どうしたらいいのでしょうか? ●●部分を空白にする、とか? 仕様的に無理なんでしょうか? ご教示頂けましたら幸いです。 どうぞよろしくお願いいたします。

    • ベストアンサー
    • PHP
  • URLのパラメータを取得しリンクに渡すには?

    Javascriptで、URLのパラメータを取得し、リンクにパラメータを渡したいです。 例えば、現在のURLが、 http://www.hogehoge.com/hoge.php?page=hoge1だとします。 そのページに、様々なリンクがあるとします。 <リンク例> http://www.hogehoge.com/moge/moge.php http://www.hogehoge.com/boge/boge.php http://www.yahoo.co.jp/auctionxx.html このうち、/moge/以下のページへのリンクにのみ、自動で現在のURLのパラメータを渡したリンクにしたいです。 つまり、 http://www.hogehoge.com/moge/moge.php ↓ http://www.hogehoge.com/moge/moge.php?page=hoge1 というリンクにしたいです。 当然現在のURLにパラメータが存在しない場合は、そのままのリンクになります。 また、他のディレクトリや他のドメインのサイトにはパラメータを渡さず、変更せずにそのままのURLのリンクにしたいです。 <リンク例> http://www.hogehoge.com/moge/moge.php ○変更 http://www.hogehoge.com/boge/boge.php ×変更なし http://www.yahoo.co.jp/auctionxx.html ×変更なし よろしくお願いします。

  • ちょっと複雑なURL分解について

    http://hoge.com/test.php?mode=link&id=3& url=http://hogehoge.com/ (表示上の問題でURLを途中で改行しています) 上記のようなURLを取得($_GET)した場合に、URLを分解して下記の値を得るスクリプトを作成しています。 $mode値:link $id値:3 $url値:http://hogehoge.com/ これだけであれば特に悩む必要はないのですが、問題は$url値に以下のようなデータが与えられた場合です。 http://hoge.com/test.php?mode=link&id=3& url=http://hogehoge.com/index.php?mode=abc&id=123 (表示上の問題でURLを途中で改行しています) このようなURLを取得($_GET)した場合に、以下の値を得るにはどう処理すれば良いのでしょうか。 $mode値:link $id値:3 $url値:http://hogehoge.com/index.php?mode=abc&id=123 どなたか詳しい方がいらっしゃいましたら、ご教授お願い致します。

    • ベストアンサー
    • PHP