0

PHP スクリプトに小さな問題があります。クエリ文字列内に URL を含めることができるようにしたいので、次のようになります。

http://example.com/?url=http://google.com/

これはまったく問題なく動作し、$_GET['url']が返されhttp://google.comます。

問題は、クエリ文字列の URL に既にクエリ文字列が含まれている場合です。たとえば、次のようになります。

http://example.com/?url=http://www.amazon.com/MP3-Music-Download/b/ref=sa_menu_mp3_str?ie=UTF8&node=163856011

戻ります:

http://www.amazon.com/MP3-Music-Download/b/ref=sa_menu_mp3_str?ie=UTF8

そして私はそれを返したい:

http://www.amazon.com/MP3-Music-Download/b/ref=sa_menu_mp3_str?ie=UTF8&node=163856011

サーバー側にPHPを使用しています。

誰か助けてくれませんか?

アップデート

を使用してCodeigniterいますが、これが原因で動作しない場合はお知らせください。

4

2 に答える 2

3

クエリ引数として渡された URL をエンコードする必要があります。

  • PHP から送信する場合は、urlencodeまたはを使用しますrawurlencode
  • JS から送信する場合は、encodeURIComponent.
于 2013-09-29T12:01:00.250 に答える
1

urldecode()を使用してクエリ文字列を渡す

于 2013-09-29T12:03:28.027 に答える