I inserted a "dummy" field (taken from spform) in my form, and use a custom snippet/function to make sure it’s left empty; the function returns false if it’s not empty, aborting the eForm processing. It uses the &eformOnValidate=`checkField` parameter in the eForm snippet call.
In the form:
<input tabindex="50" type="text" name="Last__Name" id="LastName" size=30 autocomplete="off" eform="LastName::0" />
The CSS to hide it:
#cfSet #LastName{position:absolute;text-decoration:underline;background-color:#CC0000;left:0px;top:-500px;width:1px;height:1px;overflow:hidden;}
And the snippet to validate it:
<?php
function checkField(&$fields,&$vMsg,&$rMsg) {
if(!empty($fields['Last__Name'])) {
return false;
} else {
return true;
}
}
?>
I haven’t gotten a single spam contact since I put this in.