【问题标题】:Introducing a PHP variable into a Header redirect将 PHP 变量引入 Header 重定向
【发布时间】:2016-03-12 21:27:59
【问题描述】:

这是我的代码:

header("Location: ?pid='".$_GET['pid']."'");
die();

当我写一个简单的 echo $_GET['pid']; 时,值很好,但是当我在标题中引入这个变量时,它返回类似于 27%27 的东西,这不是真正的真实值

当我使用urlencode 时,问题仍然存在:

header("Location: ?pid=". urlencode($_GET['pid']);

这里有什么问题?

谢谢

【问题讨论】:

  • $_GET['pid'] 的实际价值是多少?你能告诉我吗?
  • 是的,例如,值是一个数字 540
  • 您的问题是单引号,请尝试不使用它们进行重定向:header("Location: ?pid=".$_GET['pid']);
  • @Nordenheim nop dosent work
  • @BorisDetry 希望你能找到解决方案。

标签: php html header url-redirection


【解决方案1】:

这是因为参数被编码为 URL 格式。阅读urldecode() PHP 函数。

另外,%27 是 URL 编码的单引号字符,因此您需要从代码中删除单引号:

header("Location: ?pid=".$_GET['pid']);

如果您仍然会在标题中获得%27,那么我建议您使用trim() 将其从var 中删除,如下所示:

header("Location: ?pid=".trim($_GET['pid'], "'"));

【讨论】:

    猜你喜欢
    • 2011-05-15
    • 1970-01-01
    • 1970-01-01
    • 2012-11-17
    • 2012-03-27
    • 2019-09-09
    • 1970-01-01
    • 1970-01-01
    • 2015-11-20
    相关资源
    最近更新 更多