Смысл состоит в том, чтобы сделать в форме дополнительное поле и спрятать его стилями от пользователя. Пользователь не видит поле и не заполняет его, а бот заполнит. На стороне сервера проверять заполнено поле или нет.
html:
css:
По уверению автора, количество спама у него упало к 0.
источник.
html:
<form method="post" action="process.php"> <br>
<fieldset><br>
<label>Name: </label><input name="name" type="text" /><br /><br>
<label>Email: </label><input name="email" type="text" /><br /><br>
<label>Comment: </label><input name="comments" type="text" /> <input name="info" class="special" type="text" /> <br>
<input value="Send" type="submit" /> <br>
</fieldset><br>
</form>
css:
body {<br>
line-height:35px;<br>
font-family:Arial, Helvetica, sans-serif;<br>
color:#333;<br>
font-size:14px;<br>
}<br>
.special {<br>
width:5px;<br>
visibility:hidden;<br>
}<br>
По уверению автора, количество спама у него упало к 0.
источник.