0

我需要使用 GET 地址传递一个 url。举一个我试过的例子:

http://www.example.com/area/#http://www.example.com/area2/

我也尝试用其他字符替换正斜杠,但这似乎不起作用。您将如何在 GET 中传递 url?

4

2 回答 2

3

据我了解,您应该使用url_encode()and url_decode()

该函数url_encode()允许您创建一个可用作链接的字符串。

你应该这样使用它:

$link = 'goto.php?link=' . url_encode($_POST['target_site']);

当您要重定向到用户定义的站点(例如)时,您可以通过以下方式解码参数:

$decoded_link = url_decode($_GET['link']);
// Now it's safe to use the given URL (for example I can redirect to there)
header('location: ' . $decoded_link);

希望能帮助到你。

于 2013-06-21T13:20:22.847 回答
0

#字符链接到页面上的锚点。浏览器会自动滚动到点号后带有 id 的元素。所以这不是你要找的。

要传递 GET 参数,语法如下:

http://example.com/area?http://example.com/area2

然后,如果你var_dump($_GET),你会看到你的 URL。但是,如果您还想在 URL 中传递其他字段,则可以使用 key=value 对,如下所示:

http://example.com/area?url=http://example.com/area2¶m1=a¶m2=b

在这种情况下,您的 URL 将在$_GET['url'].

于 2013-06-21T13:18:02.823 回答