如果提交了HTML表单,请检查

时间:2011-09-26 23:43:19

标签: php html forms

if ($_POST['submit']) ...与if (isset($_POST['submit'])相同......或者它意味着什么?我应该用哪一个来检查表单是否已提交?

有没有办法提取表格名称?

5 个答案:

答案 0 :(得分:1)

使用if ($_SERVER['REQUEST_METHOD'] == 'POST')。所有其他方法都存在缺陷。如果重命名提交按钮怎么办?

答案 1 :(得分:1)

要获取表单名称,您可以:

1)使用隐藏的输入字段,其值与表单名称

相同

2)将提交按钮的名称设置为表单名称

实际的表单名称不会在POST或GET变量中发送。

答案 2 :(得分:0)

isset

确定变量是否已设置且不是NULL

Boolean cast(与!empty($ var)相同)

  

empty如果var具有非空和非零值,则返回FALSE。

     

以下内容被认为是空的:

* "" (an empty string)
* 0 (0 as an integer)
* 0.0 (0 as a float)
* "0" (0 as a string)
* NULL
* FALSE
* array() (an empty array)
* var $var; (a variable declared, but without a value in a class)

页面可以包含多个表单。最好还为submit元素提供一个值:

<input type="hidden" name="submit" value="login" />

然后在您的PHP代码中,您可以:

if (isset($_POST['submit']) && $_POST['submit'] == 'login') {

}

答案 3 :(得分:0)

if(isset($_POST['submit']))检查变量是否存在,或者在这种情况下,如果密钥存在于数组下并且不为null。

if($_POST['submit'])将检查$_POST['submit']的值是否等于true(或其他一些评估为true的值)。

第二种方法,如果未设置变量,将抛出通知错误。您应该使用isset来检查是否设置了变量,这就是它的用途。

答案 4 :(得分:-1)

它们是相同的但使用if(isset($ _ POST ['submit'])或if(!empty($ _ POST ['submit'])更好