首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >检查表单是否已提交- PHP

检查表单是否已提交- PHP
EN

Stack Overflow用户
提问于 2011-10-10 18:28:55
回答 9查看 323.4K关注 0票数 133

检查表单是否已提交以确定是否应该将表单的变量传递给验证类的最佳方法是什么?

一开始我想也许:

isset($_POST)

但这将始终返回true,因为超级全局的定义无处不在。我不想遍历表单中的每个元素:

if(isset($_POST['element1']) || isset($_POST['element2']) || isset(...etc

在写这个问题的时候,我想到了一个更基本的解决方案,添加一个隐藏字段作为我可以检查的标志。

有比添加我自己的标志更“干净”的方法吗?

EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2011-10-10 18:32:31

对于常规检查是否存在POST操作,请使用:

if (!empty($_POST))

编辑:如评论中所述,此方法在某些情况下不起作用(例如,使用复选框和没有名称的按钮)。你真的应该使用:

if ($_SERVER['REQUEST_METHOD'] == 'POST')
票数 213
EN

Stack Overflow用户

发布于 2011-10-10 18:32:38

怎么样

if($_SERVER['REQUEST_METHOD'] == 'POST')
票数 174
EN

Stack Overflow用户

发布于 2012-03-18 01:39:30

实际上,submit按钮已经执行了此功能。

在表单中尝试:

<form method="post">
<input type="submit" name="treasure" value="go!">
</form>

然后在PHP处理程序中:

if (isset($_POST['treasure'])){
echo "treasure will be set if the form has been submitted (to TRUE, I believe)";
}
票数 72
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7711466

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档