如何检查特定字段是否已设置?

时间:2013-10-24 01:33:42

标签: php

如何检查是否设置了特定字段?

例如:

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。那是为什么?

如何检查是否设置了特定字段?

3 个答案:

答案 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'])){ 

效率更高,也是正确的做法。