当前位置:首页 > PHP教程 > php应用 > 列表

php不允许用户提交空表单(php空值判断)

发布:smiling 来源: PHP粉丝网  添加日期:2020-06-28 15:55:42 浏览: 评论:0 

我们在设计提交空的评论时依然可以写入数据库,并在页面显示出来。这显然是不合理的,所以需要我们加入空值判断,可以修改代码,添加些判断:

  1. if(emptyempty($_POST['name'])){ 
  2.   echo "俗话说的好,雁过留声人过留名<br />"
  3.  } 
  4.  
  5.  elseif(emptyempty($_POST['comment'])){ 
  6.   echo "矮油,多说几句吧~"
  7.  } 
  8.  else
  9.   $sql = "INSERT INTO myblog_comments(blog_id, dateposted, name, comment) VALUES(" . $validentry . ", NOW(), '" . $_POST['name'] . "''" . $_POST['comment'] . "');"; 
  10.   mysql_query($sql); 
  11.   header("Location: http://"$_SERVER['HTTP_HOST'] . $_SERVER['SCRIPT_NAME']."?id=" . $validentry); 
  12.  } 

PHP空值判断

empty 和 isset 虽然都是变量处理函数,它们都用来判断变量是否已经配置,它们却是有一定的区别:empty还会检测变量是否为空、为零。当一个变量值为0,empty 认为这个变量同等于空,即相当于没有设置。代码如下:

  1. <?php 
  2. /*比如检测 $id 变量,当 $id=0 时,用empty 和 isset 来检测变量 $id 是否已经配置,两都将返回不同的值—— empty 认为没有配置,isset 能够取得 $id 的值:*/ 
  3.     $id=0; 
  4.     emptyempty($id)?print "It's empty .":print "It's $id .";  
  5.       //结果:It's empty . 
  6.     print "<br>"
  7.     !isset($id)?print "It's empty .":print "It's $id ."
  8.       //结果:It's 0 . 
  9. ?> 

总结PHP中,“NULL” 和 “空” 是2个概念。

isset  主要用来判断变量是否被初始化过

empty  可以将值为 “假”、“空”、“0”、“NULL”、“未初始化” 的变量都判断为TRUE

is_null  仅把值为 “NULL” 的变量判断为TRUE

var == null  把值为 “假”、“空”、“0”、“NULL” 的变量都判断为TRUE

var === null  仅把值为 “NULL” 的变量判断为TRUE

所以我们在判断一个变量是否真正为“NULL”时,大多使用 is_null,从而避免“false”、“0”等值的干扰。

Tags: php提交空表单

分享到: