My first post here... Hello!
The method that has worked for me the best is to use oddly named fields in your forms, so instead of this:
HTML Code:
<form action="" method="post">
Name:<input type="text" name="name" />
Email: <input type="text" name="email" />
Message: <textarea name="message"></textarea>
<input type="submit" value="Send Message"/>
</form>
You would use:
HTML Code:
<form action="" method="post">
Name:<input type="text" name="input_field_one" />
Email: <input type="text" name="input_field_two" />
Message: <textarea name="input_field_three"></textarea>
<input type="submit" value="Send Message"/>
</form>
After switching my contact form (which a copy gets sent to my cell phone, so you can see the
severe need for it to stop) the spam stopped instantly.
You only need to remember (or leave comments in your code) which fields are which, so this method may not be suitable for larger, more complex forms, but for the smaller ones it can be a life-saver. The best part is that the user is completely un-aware of any difference, since it's just the name attribute that get's changed.