检查表单是否已提交 - 一种干净高效的方法
确定表单是否已提交对于启动验证过程至关重要安全的数据处理。让我们探索一种避免常见陷阱的有效解决方案。
存在的简单性
最初,人们可能会考虑使用 isset($_POST) 来检查是否存在超全局数组,假设它将指示表单提交。然而,这种方法未能考虑到超全局变量总是被定义的事实,从而导致恒定的“true”结果。
此外,使用 isset($_POST['element1']) 及其值迭代每个表单元素相应的元素是一个乏味且容易出错的过程。
隐藏的标志解决方案
要解决这些问题,一个简单的解决方案是将隐藏字段与用作提交标志的值合并。此方法确保隐藏字段的存在仅由于表单提交而存在。
更全面的方法
虽然隐藏标志方法有效,但它可以被认为是一种解决方法。更直接和精确的方法是检查服务器的请求方法:
if ($_SERVER['REQUEST_METHOD'] == 'POST')
重要说明
值得注意的是 $_SERVER['REQUEST_METHOD'] 方法可能并不总是可靠的,特别是对于没有名称的复选框或按钮。要获得全面的解决方案,请确保您的表单至少有一个具有指定名称的元素。
以上是如何可靠地检测 PHP 中的表单提交?的详细内容。更多信息请关注PHP中文网其他相关文章!