Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用隐藏表单字段减少垃圾邮件_Php_Forms - Fatal编程技术网

Php 使用隐藏表单字段减少垃圾邮件

Php 使用隐藏表单字段减少垃圾邮件,php,forms,Php,Forms,为了减少垃圾邮件,我有一个值为“email2”的表单,它隐藏在CSS中 然后在我的php处理表单中,我得到了: if(!empty($_POST['email2'])) { die ("Sorry I believe you are a robot, please try again and if you aren't... only enter your email once"); } else { submit data to mysql } 其原理是,如果email

为了减少垃圾邮件,我有一个值为“email2”的表单,它隐藏在CSS中

然后在我的php处理表单中,我得到了:

if(!empty($_POST['email2'])) 
{ die ("Sorry I believe you are a robot, please try again 
        and if you aren't... only enter your email once");
}
else {
submit data to mysql
} 
其原理是,如果email2表单留空(这将发生在使用css的人身上),表单将被处理。然后,如果它是由一个机器人填补了所有的网站,那么它将不会被处理。这确实有效,但是

我不明白它是怎么工作的,我觉得自己非常愚蠢。如果我错了,请纠正我,但查看上面的代码,它表明如果email2框为空,则表单不会被处理。但实际上,如果它被填满了,它会处理它

我是一个非常困惑的php业余爱好者


所以它说如果空。

空的前面有一个解释标记,它是一个布尔值
挂起,感叹号会反转值,不是吗…哦。编辑:我打字时,你发表了评论。非常感谢。我觉得自己很愚蠢。我需要将email2放入mysql转义变量、值和插入位,并在我的mysql表中创建空间吗?还是可以省去所有这些?!前面的布尔语句使其含义相反:!真=假!假=TRUE@user3894741-您是否正在将email2放入数据库?由于您正在中止脚本(如果存在):否。最好是注释而不是答案:p@GeorgeGarchagudashvili-这是一个答案。这是一个简短的回答,但那是因为它是一个简单的问题。