php用户提交表单不能为空的解决办法:1、修改代码,添加些判断;2、isset用来判断变量是否被初始化过;2、empty可以将值为【“假”、“空”、“0”、“NULL”、“未初始化”】的变量都判断为TRUE。
php用户提交表单不能为空的解决办法:
可以修改代码,添加些判断:
代码如下:
if(empty($_POST['name'])){ echo "俗话说的好,雁过留声人过留名<br />"; } elseif(empty($_POST['comment'])){ echo "矮油,多说几句吧~"; } else{ $sql = "INSERT INTO myblog_comments(blog_id, dateposted, name, comment) VALUES(" . $validentry . ", NOW(), '" . $_POST['name'] . "', '" . $_POST['comment'] . "');"; mysql_query($sql); header("Location: http://". $_SERVER['HTTP_HOST'] . $_SERVER['SCRIPT_NAME']."?id=" . $validentry); }
PHP空值判断
empty
和isset
虽然都是变量处理函数,它们都用来判断变量是否已经配置,它们却是有一定的区别:empty还会检测变量是否为空、为零。当一个变量值为0,empty 认为这个变量同等于空,即相当于没有设置。
代码如下:
<?php /*比如检测 $id 变量,当 $id=0 时,用empty 和 isset 来检测变量 $id 是否已经配置,两都将返回不同的值—— empty 认为没有配置,isset 能够取得 $id 的值:*/ $id=0; empty($id)?print "It's empty .":print "It's $id ."; //结果:It's empty . print "<br>"; !isset($id)?print "It's empty .":print "It's $id ."; //结果:It's 0 . ?>
总结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”等值的干扰。
相关学习推荐:PHP编程从入门到精通
Atas ialah kandungan terperinci 如何让php用户提交表单不能为空?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!