为了账号安全,请及时绑定邮箱和手机立即绑定

if(!(isset($_POST['title'])&&(!empty($_POST['title'])))){...}

当$_POST['title']是0的时候:

不是null的情况,isset($_POST['title'])为true,那么!isset($_POST['title'])为false;

同时,无论什么类型,empty($_POST['title'])都为true,那么加上引号后,!empty($_POST['title'])为false;

false&&false还是false,!(false&&false)是true,最终条件成立,发布标题0,弹窗。


当$_POST['title']是空格的时候:

isset($_POST['title'])为true,empty($_POST['title'])为false,!empty($_POST['title'])为true,true&&true还是true,!(true&&true)是false,最终条件不成立,发布空格标题,不弹窗。


--------------------------------------分割线--------------------------------------------

if(trim($_POST['title'])==null){

    echo "<script>alert('标题不能为空');window.location.href='article.add.php'</script>";

}

正在回答

3 回答

如果$_POST['title']没有定义,直接用trim, PHP 会报错,如果你看Apache的Log文件就知道了。

1 回复 有任何疑惑可以回复我~
#1

小往大来 提问者

是会报错。你说的Log文件是在哪里,我没找到,是因为我使用WAMP的原因么。
2015-01-16 回复 有任何疑惑可以回复我~

我按照老师写的方法为什么空格可以弹窗啊?


0 回复 有任何疑惑可以回复我~

修正如下

 if(!isset($_POST['title']) || (trim($_POST['title'])==null)){

        echo "<script>alert('标题不能为空');window.location.href='article.add.php'</script>";

    }

0 回复 有任何疑惑可以回复我~
#1

jack1018

如果$_POST['title']存在, 那么trim($_POST['title'])返回直永远是String, 不可能是 null, 即使是空的,那就返回一个空的String , trim($_POST['title'])==''
2015-01-17 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
PHP与MySQL关系大揭秘
  • 参与学习       72504    人
  • 解答问题       978    个

让我们一起走上探秘之旅,找寻php和mysql恋爱的真谛

进入课程

if(!(isset($_POST['title'])&&(!empty($_POST['title'])))){...}

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号