Is there a good method of form security that does not involve CAPTCHA? CAPTCHA is so annoying, but I need security because I am getting form spam. My form is
When you open a form generate one md5() string and put it in session (for example $_SESSION['captha'])
Your form sould have one hidden field and when you open this form write this data from $_SESSION['captha'] into this hidden field
When you receive this post request compare value in session and value which come with this hidden field. If it is same everithing is ok and vice versa. Of course, after you handle this request just delete variable $_SESSION['captha'].