在同一页面中获取POST方法信息的正确处理方法

时间:2012-01-16 17:57:16

标签: php html web

我不确定我是否正在以良好的方式处理我的"相同页面" 表格。
我正在做的方法是在表单中添加一个名为" action" value='1'的隐藏输入。
然后,在页面的开始,我验证$_POST["action"]是否有值,如果有,那么我运行代码。

我不知道这是否正确。如果还有其他办法,我会很高兴知道 提前谢谢。

2 个答案:

答案 0 :(得分:2)

检测POST请求的另一种方法是:

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    // ... deal with $_POST parameters
}

您不仅要检查请求方法;始终验证用户输入。

答案 1 :(得分:1)

我认为你是以正确的方式做到的。

我实际上更喜欢使用隐藏字段。它允许您将不同的POST类型彼此分开。

假设我有一个页面有两个单独的表单,一个用于登录,另一个用于注册。您可以拥有一个名为$_POST['login_submit']的隐藏字段和$_POST['register_submit']的另一个字段。当然,他们都会以不同的方式进行验证。对我个人而言,这种方法提供了更好的代码可读性。

示例:

if ( $_POST['login_submit'] )
{
    validate and do something...
} 
elseif ( $_POST['register_submit'] )
{
    validate and do something else...
}