【问题标题】:Getting URL from $_GET with all parameters使用所有参数从 $_GET 获取 URL
【发布时间】:2018-09-27 19:41:15
【问题描述】:

欢迎,

简单代码:

<?
$parametrs = (isset($_GET['url']) ? $_GET['url'] : '');
echo $parametrs;
?>

在 URL 的参数中我已经:

https://scontent-waw1-1.xx.fbcdn.net/v/t1.0-9/12688238_10153608378188197_489584030822190108_n.jpg?_nc_cat=100&_nc_eui2=AeF838NYAK8LUEwdXcefThvdaa0MIWy1XfuIQkSmJMh-zlpCFVHFpQyYJVBUXK79YiASxQE6cyIgTIaGXnSCoWO0YuXTpj9g6N4RoYlJnE5wOw&oh=e0a1aef0f5834746c73991e937fdae23&oe=5C26DFD6

但脚本只显示我:

https://scontent-waw1-1.xx.fbcdn.net/v/t1.0-9/12688238_10153608378188197_489584030822190108_n.jpg?_nc_cat=100

如何从 $_GET['url'] 中获取所有字符串?

提前致谢。

【问题讨论】:

  • 你没有 $_GET['url']... 你有 $_GET['n_cat'] 和 $_GET['oa']
  • 我现在才注意到...谢谢! :-)
  • 当然...还有什么问题吗?您在寻找显示的网址吗?

标签: php url parameters get


【解决方案1】:

您可以在一次调用中将所有参数作为数组获取,如下所示:

print_r($_REQUEST);

【讨论】:

  • 非常感谢。也许你对这段代码有更好的看法? function getFullURL() { $parameters = $_REQUEST; $full_url = ''; if (strpos($parameters, 'img_url') !== false) { $full_url .= $parameters['img_url']; } if (strpos($parameters, '_nc_eui2') !== false) { $full_url .= '&amp;_nc_eui2=' . $parameters['_nc_eui2']; } if (strpos($parameters, 'oh') !== false) { $full_url .= '&amp;oh=' . $parameters['oh']; } if (strpos($parameters, 'oe') !== false) { $full_url .= '&amp;oe=' . $parameters['oe']; } return $full_url; }
  • 要获得完整的 url,请使用这个 - function getFullURL() { return $_SERVER['HTTP_HOST']. $_SERVER['REQUEST_URI']; } 要让每个参数过滤它并再次构建 url,请使用 $_REQUEST 变量
【解决方案2】:

问题在于您没有将参数 URL 编码为原始脚本。因此url= 参数中的&amp; 被视为该参数的结尾,而不是参数的一部分。原来的网址应该是这样的:

?url=https://scontent-waw1-1.xx.fbcdn.net/v/t1.0-9/12688238_10153608378188197_489584030822190108_n.jpg?_nc_cat=100%26_nc_eui2=AeF838NYAK8LUEwdXcefThvdaa0MIWy1XfuIQkSmJMh-zlpCFVHFpQyYJVBUXK79YiASxQE6cyIgTIaGXnSCoWO0YuXTpj9g6N4RoYlJnE5wOw%26oh=e0a1aef0f5834746c73991e937fdae23%26oe=5C26DFD6

URL 中的所有&amp; 都已替换为%26

如果您在 PHP 中创建 URL,您可以使用 urlencode($url) 来执行此操作。如果您在 JavaScript 中创建它,请使用 encodeURIComponent(url)。如果您使用的是 jQuery AJAX,请将所有参数放入对象中的 $.get$.ajax 等函数中,jQuery 会自动正确编码所有内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-15
    • 2012-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多