是if ($_POST['submit'])
...与if (isset($_POST['submit'])
相同......或者它意味着什么?我应该用哪一个来检查表单是否已提交?
有没有办法提取表格名称?
答案 0 :(得分:1)
使用if ($_SERVER['REQUEST_METHOD'] == 'POST')
。所有其他方法都存在缺陷。如果重命名提交按钮怎么办?
答案 1 :(得分:1)
要获取表单名称,您可以:
1)使用隐藏的输入字段,其值与表单名称
相同2)将提交按钮的名称设置为表单名称
实际的表单名称不会在POST或GET变量中发送。
答案 2 :(得分:0)
确定变量是否已设置且不是NULL
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'])更好