Php isset isn';提交表格时不工作
我想在提交表单时验证表单字段,我使用Php isset isn';提交表格时不工作,php,forms,validation,Php,Forms,Validation,我想在提交表单时验证表单字段,我使用isset()检查字段是否有值。我面临的问题是,如果字段的值为NOTS,则返回true 下面是HTML代码 <form action="handler.php" method="post"> <label>userName: </label><input type="text" name="fname" /><br/> </form> 用户名: 下面是php代码 <?php e
isset()
检查字段是否有值。我面临的问题是,如果字段的值为NOTS,则返回true
下面是HTML代码
<form action="handler.php" method="post">
<label>userName: </label><input type="text" name="fname" /><br/>
</form>
用户名:
下面是php代码
<?php error_reporting(E_ALL);
if(validateForm()){?>
Welcome <?php echo $_POST["fname"]; ?>.<br />
}
function validateForm(){
$empty=false;
$empty=isset($_POST['fname'])?'true':'false';
echo 'empty>>>>'.$empty;
return $empty;
}
?>
欢迎光临。
}
函数validateForm(){
$empty=false;
$empty=isset($_POST['fname'])?'true':'false';
回显“empty>>>>”。$empty;
返回$empty;
}
?>
使用
如果不确定$\u POST
中的内容,只需打印即可
var_dump($_POST)
使用
如果不确定$\u POST
中的内容,只需打印即可
var_dump($_POST)
您想要使用的是:
编辑:删除了isset()
,因为它不是必需的。感谢@Julian.您想要使用的是:
编辑:删除了
isset()
,因为它不是必需的。感谢@Julian.即使该字段没有值,也会将其设置为“”值(长度为0的字符串)。如果要检查是否有可用的值,请使用empty()
或检查字符串的长度。即使字段没有值,也会将其设置为值“”(长度为0的字符串)。如果要检查是否有可用的值,请使用empty()
或检查字符串的长度。在执行输入表单时,如果输入文本字段为空,则它不是NULL
isset
检查它是否为NULL
。如果不是NULL
,则返回true;如果NULL
,则返回false
我会使用
empty()
检查它是否为空。它检查传递给它的变量是否为空。如果为空,则返回true;如果为非空,则返回false。执行输入表单时,如果输入文本字段为空,则不为NULLisset
检查它是否为NULL
。如果不是NULL
,则返回true;如果NULL
,则返回false
我会使用
empty()
检查它是否为空。它检查传递给它的变量是否为空。如果为空,则返回true,如果为非空,则返回false。“isset-确定变量是否已设置且不为NULL”-设置了$\u POST['fname'],并且很可能等于空字符串。还要注意,'false'
在我这样设置$empty=(isset($\u POST['fname'])&!empty($\u POST['fname'])时,计算结果为true
@thetaiko=(isset true:false);返回1表示真值,返回nothing表示假值,如何返回假值?返回布尔值(与字符串相反),并在if
语句中使用它。返回true
或false
,而不是'true'
或'false'
。尝试var\u dump
而不是echo
“isset”-确定变量是否已设置且不为空-$\u POST['fname']已设置且可能等于空字符串。还要注意,'false'
的计算结果为true
@thetaiko,当我这样做$empty=(isset($\u POST['fname'])&!empty($\u POST['fname'])时?true:false;返回1表示真值,返回nothing表示假值,如何返回假值?返回布尔值(与字符串相反),并在if
语句中使用它。返回true
或false
,而不是'true'
或'false'
。尝试var\u dump
而不是echo
一个简单的空检查就足够了。不需要同时设置和清空。一张简单的空支票就足够了。不需要同时设置isset和empty。您可以使用编辑器功能正确设置答案的格式(更可用)。您可以使用编辑器功能正确设置答案的格式(更可用)。
function validateForm(){
return !empty($_POST['fname']);
}