为了账号安全,请及时绑定邮箱和手机立即绑定

检查表单是否已提交-PHP

检查表单是否已提交-PHP

PHP
有只小跳蛙 2019-10-16 11:16:50
检查是否已提交表单以确定是否应将表单变量传递给验证类的最佳方法是什么?首先我想也许是:isset($_POST)但这将永远返回true,因为在任何地方都定义了超全局变量。我不想用以下方法遍历表单的每个元素:if(isset($_POST['element1']) || isset($_POST['element2']) || isset(...etc在写这个问题时,我想到了一个更基本的解决方案,同时添加一个隐藏字段作为我可以检查的标志。有没有比添加自己的标志更“干净”的方法?
查看完整描述

3 回答

?
慕后森

TA贡献1802条经验 获得超5个赞

对于一般检查是否有POST动作使用:


if (!empty($_POST))

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


if ($_SERVER['REQUEST_METHOD'] == 'POST')


查看完整回答
反对 回复 2019-10-16
?
慕容森

TA贡献1853条经验 获得超18个赞

怎么样


if($_SERVER['REQUEST_METHOD'] == 'POST')


查看完整回答
反对 回复 2019-10-16
?
繁花不似锦

TA贡献1851条经验 获得超4个赞

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


尝试填写表格:


<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)";

}


查看完整回答
反对 回复 2019-10-16
  • 3 回答
  • 0 关注
  • 431 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信