$ _REQUEST [var]的常见原因是null?

时间:2012-11-11 03:02:17

标签: php wordpress request

$_REQUEST[var]为空的常见原因是什么?

我在URI中传递了&redirect_to=somevalue。当我在接收PHP代码中测试$_REQUEST['redirect_to']时,它似乎未设置。这可能是服务器环境配置问题造成的吗?我在使用ZippyKid,我知道他们对安全非常认真。

更新:这仍然没有修复。阅读以下评论。一旦每个人都帮助我意识到问题可能是我传递的URL作为'redirect_to'的值,我就去做了。但后来我发现,我暂时使用了'blah'这个词。所以现在我正在点击这个:

http://mysite.com/wp-login.php?action=lostpassword&sidedoorkey=2738jksdf98143lkadsf9534sdfadsf3f2321asdf53&redirect_to=blah

但是php说$ _REQUEST ['redirect_to']是一个零长度的字符串。 O_O

2 个答案:

答案 0 :(得分:0)

我还没有解决这个问题,但我找出问题的常见原因,所以我正在回答这个问题。

我怀疑这个问题是由于cookie中的“粘性”变量引起的。如果使用相同的变量设置cookie,它可以覆盖在_GET或_POST中传递的重复变量的值。

这自然是使用_REQUEST的主要安全问题,以及使用它的不良做法。呸,愚蠢的Wordpress旧代码!希望我能弄清楚我的问题是否实际上是一个cookie var然后修复问题。我已多次倾倒代码并在其他地方看不出任何问题。

答案 1 :(得分:0)

尝试在每个字符串之前使用urlencode,例如redirect_to = urlencode('blah'):