How faulty checking for valid email addresses can hurt you
blog.ox.cx
blog.ox.cx
You can try, but you can't prevent people from doing dumb things, and in the attempt you end up potentially making mistakes like in the case of the article. Users will always do something unanticipated. With that in mind I only validate the things that really matter (e.g. credit card numbers, social security numbers, etc.). If someone wants to enter "jane at aol" as their address, I have to think, "is this going to a problem for my company?" If not, don't bother to try to fix it.
[1] Great overview of the problem, plus a PHP validator. http://www.dominicsayers.com/isemail/
My policy on validating email addresses is "if I send you an email and it arrives, your email address is valid".
Why do you need to "validate" an email address? Knowing that an address is syntactically valid doesn't do anything to confirm that it will reach the intended target.
I agree - long term relationships are built on (in the context of this conversation) an exchange of emails but why blow it at the first hurdle?
However, knowing that an address is syntactically invalid does confirm that it won't reach the intended target. If you don't mess up the validation.
Might be better than having the user wait infinitely for an important transactional email that will never arrive because of a dumb typo.
It's possible to have a 6 character email address, but for most users checking that they have entered more than 6 chars would be good.