Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/235.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表单每15分钟发送一次空白电子邮件?_Php_Jquery_Forms - Fatal编程技术网

PHP表单每15分钟发送一次空白电子邮件?

PHP表单每15分钟发送一次空白电子邮件?,php,jquery,forms,Php,Jquery,Forms,我的PHP联系人表单有一个奇怪的问题,大约每15分钟我就会收到一封空白的电子邮件,并且每天都会收到?!当我填写表格时,我会立即收到发送给我的详细信息,所有字段都填写得很好 我使用PHP进行表单验证,jQuery验证进行验证,表单有效,验证也有效,但由于我对PHP不太了解,可能是流程不对 form.php-来源: 我不得不把表格记下来,因为我每天收到这么多邮件。$recipient已设置为我的电子邮件,但将其作为此帖子的虚拟地址。根据您的代码片段。这与15分钟的空白邮件问题无关。您的表单可能被

我的PHP联系人表单有一个奇怪的问题,大约每15分钟我就会收到一封空白的电子邮件,并且每天都会收到?!当我填写表格时,我会立即收到发送给我的详细信息,所有字段都填写得很好

我使用PHP进行表单验证,jQuery验证进行验证,表单有效,验证也有效,但由于我对PHP不太了解,可能是流程不对

form.php-来源:



我不得不把表格记下来,因为我每天收到这么多邮件。
$recipient
已设置为我的电子邮件,但将其作为此帖子的虚拟地址。

根据您的代码片段。这与15分钟的空白邮件问题无关。您的表单可能被某些bot或恶意脚本攻击。然而,它的形式非常简单。表单有几种标准实践,但对于初学者来说,您可能需要查看以下链接以了解整个想法

当你阅读完这篇文章后,你应该仔细研究一下。一旦您熟悉Javascipt验证,您可以跳转到Jquery验证或Jquery验证插件

上面的链接并不是世界末日,但你至少应该了解基本表单提交流程


希望这有帮助

你已经成为目标(cron机器人)。您需要集成验证码和/或需要选中的复选框才能执行。您还应该检查是否有任何空数组。将此视为“一个”可能的解决方案。检查你的访问日志并拒绝访问。寻找WordPress插件,帮助保护你的站点不被垃圾邮件攻击。我知道,它是前几天才开始的,而且一切正常。我也不认为这是一个机器人,因为它没有向我发送任何垃圾邮件。@victor,我没有在网站上使用WordPress。代码中明显的遗漏是检查
submit
按钮或空
$\u POST
。谢谢你,山姆,我看到我有很多工作要做,@Fred-ii-也提到了机器人,所以我现在就把表单去掉,以后再添加一层额外的安全性。机器人以你的网站为目标多久?如果表单不存在,它还会访问该站点吗?好的,你可以检查你的服务器日志和统计数据。你应该能够得到谁在点击你的表单URL。最好是简单地保护您的表单。一旦你有了更好的想法,机器人程序/脚本就会继续运行。这是机器人停止工作的机会,他们可能会停止,并可能稍后来检查相同的URL。最好将表单保护到机器人无法自动发布的程度。只要表单是安全的,您就应该担心是谁攻击了您的表单。它可能是安装在浏览器中的恶意脚本。简言之,保护您的表单。
  <?php
   $name = $_POST['name'];
   $email = $_POST['email'];
   $phone = $_POST['phone'];
   $call = $_POST['call'];
   $website = $_POST['website'];
   $priority = $_POST['priority'];
   $type = $_POST['type'];
   $message = $_POST['message'];
   $formcontent=" From: $name \n Phone: $phone \n Call Back: $call \n Website: $website \n Priority: $priority \n Type: $type \n Message: $message";
   $recipient = "youremail@here.com";
   $subject = "Contact Form";
   $mailheader = "From: $email \r\n";
   mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
   echo "Thank You!";
  ?>