Post data returning null

时间:2012-02-02 作者:Evan

我正在从插件中编写代码,并试图创建一个由两部分组成的注册表。我正在使用POST来确定表格的第一部分是否已提交。但不幸的是,POST数据没有通过。以下是我的表单:

<form action="<?php echo $_SERVER[\'REQUEST_URI\'] ?>" method="post">
<input type="submit" name="user_info_form" id="user_info_form" />
</form>
理论上,这应该会发回同一页。然后我使用下面的代码读取POST数据。

if(isset($_POST[\'user_info_form\']))
{
echo "found data";
}
else
{
echo "nothing found";
}
遗憾的是,表单提交后将输出“nothing found”。

有什么原因与WordPress有关吗?我已经做了几个小时了,非常感谢您的帮助!

4 个回复
最合适的回答,由SO网友:Evan 整理而成

我(刚才)在这个问题上找到了自己的答案。这个愚蠢的插件在页面底部有javascript,禁止所有提交按钮工作-真是个笑话,对不起大家。

SO网友:Exit

是否尝试向输入字段添加值?看起来您使用的是提交输入字段,而不是文本输入字段<;-没关系,提交后仍然不是空的

要进行故障排除,请尝试在代码顶部添加以下内容:

<?php
echo \'Post variables:<br />\';
print_r($_POST);
?>
另外,您将此代码放置在哪里?我把你的代码直接放在标题里了。一个定制主题的php文件,它按预期工作。

SO网友:Jared

在代码中添加一个隐藏的输入字段怎么样?

<form action="<?php echo $_SERVER[\'REQUEST_URI\'] ?>" method="post">
    <input type="hidden" value="1" name="form_submitted" />
    <input type="submit" name="user_info_form" id="user_info_form" />
</form>
然后与隐藏字段的值进行比较。这有什么区别吗?

SO网友:user1921117

<form action="<?php echo $_SERVER[\'REQUEST_URI\'] ?>" method="post">
<input type="submit" name="user_info_form" id="user_info_form" />
</form>
我认为PHP中存在语法错误。它应该以分号结尾,如下所示:

<form action="<?php echo $_SERVER[\'REQUEST_URI\']; ?>" method="post">
<input type="submit" name="user_info_form" id="user_info_form" />
</form>

结束