如何检查是否设置了特定字段?
例如:
HTML 的
<form method="post" action="check.php">
name <input type="text" name="username" /> <br />
text to send <input type="text" name="to_send" /> <br />
<input type="submit" value="submit" />
</form>
PHP
if(isset($_POST['username'])) {
echo "Username is set";
}else if(isset($_POST['to_send'])) {
echo "text-to-send is set";
}
无论我在username
字段中输入内容还是if
字段,都始终评估为true
。那是为什么?
如何检查是否设置了特定字段?
答案 0 :(得分:2)
因为大多数控件总是设置为空(一个例外是复选框)。尝试:
if(!empty($_POST['username'])) {
答案 1 :(得分:0)
你可以尝试
if(!empty($_POST['username'])){
echo "Username is set";
}else if(...
答案 2 :(得分:0)
该字段将始终设置,因为它是来自提交操作的post数组的一部分。实际上,您需要检查字段以查找“”以外的值或空字符串。
if($_POST['username'] == ''){
//This field is an empty string
} else {
//There is a value here
}
但是,如上所述:
if(!empty($_POST['username'])){
效率更高,也是正确的做法。