我一直在考虑简单的方法来防止垃圾机器人向网站上的公共表单(例如联系表单)提交内容。这足以阻止机器人吗?
我知道很多网站现在会问用户一个简单的问题(例如什么是2 + 4?)。
如果您有以下情况,是否足以阻止大多数机器人?
HTML
<form action="submit.php" method="post">
<input type="text" name="name" placeholder="Name" /><br />
<textarea name="message" placeholder="Message"></textarea><br />
<label for="test">I am a:</label>
<select id="test">
<option value="robot" selected="selected">Robot</option>
<option value="human">Human</option>
</select>
</form>
PHP
<?php
if ($_POST['test'] == 'robot') header ('Location: contact.php?err=nothuman');
// process form
?>
的想法是,机器人可能会留在所选项目的选择项。
如果有人有另一个非常简单的解决方案,我会有兴趣听到?
只是让每个人都知道**我知道**有关验证码 - 我不是在谈论* *完整的垃圾邮件防护功能,更简单* *垃圾邮件保护 - 个人而言,我发现reCAPTCHA的是要多为小痛事情(例如联系表格) – 2012-01-01 21:45:20
在我使用的一些简单表格中,机器人提交通常会选择第一个非默认选项。因此,由于您已预先选择了Robot,因此他们可能会选择Human。 – 2012-01-01 21:46:19
尽管recaptcha还不多,但这是防止垃圾邮件的最佳方法之一。如今,机器人变得更加智能,并且可以轻松解析页面。如果您始终使用相同的图像/文本作为防止垃圾邮件的机制,则某些用户可能会将该选项一次性提供给机器人,然后可能会轻易地继续向您发送垃圾邮件。 – 2012-01-01 21:47:48