-1

我的网站上有一个包含 3 个字段(电子邮件、评论和垃圾邮件预防)的联系表。电子邮件和评论字段有效。垃圾邮件字段在线工作并阻止人们(它显示消息:“您未通过垃圾邮件测试”)但我仍然收到错误答案的电子邮件。

垃圾邮件问题是“这个气球是什么颜色的”(带有蓝色气球的图片)。

任何帮助将不胜感激。

<script type="text/javascript">
function hgsubmit()
{
if (/^\S+@[a-z0-9_.-]+\.[a-z]{2,6}$/i.test(document.hgmailer.email.value) == false) alert ("A valid email address is required.");
else if (/\S+/.test(document.hgmailer.comment.value) == false) alert ("Your email content is needed.");
else if (/blue|Blue/.test(document.hgmailer.spam.value) == false) alert ("You failed the spam test.");
else {
   document.hgmailer.submit();
   alert ('Thank you!\nYour email is sent.');
   }
}
</script>

如果这很重要,我正在使用FormMail

4

1 回答 1

3

垃圾邮件机器人不会在页面中运行脚本,它们只会抓取 HTML 代码以获得可以发布数据的表单,因此您无法保护自己免受使用 Javascript 的攻击。

为了防止这些,您需要服务器端的代码可以根据表单中的内容拒绝请求。您可以使用 Javascript 将特定信息放入字段中,如果在到达服务器时缺少这些信息,您就知道它不是由浏览器发布的。

于 2013-11-01T22:51:45.433 回答