Hallo Matze,
Für E-mailadressvalidierung (was ein schönes Wort^^) benutz ich die Funktion von SelfHTML. Weil ich den Link grad nicht finde hier der Code:
E-Mail Prüffunktion von selfthtml.org
function check_mail($email){
$nonascii = "\x80-\xff";
$nqtext = "[^\\$nonascii\015\012"]";
$qchar = "\\[^$nonascii]";
$protocol = '(?:mailto:)';
$normuser = '[a-zA-Z0-9][a-zA-Z0-9_.-]';
$quotedstring = ""(?:$nqtext|$qchar)+"";
$user_part = "(?:$normuser|$quotedstring)";
$dom_mainpart = '[a-zA-Z0-9][a-zA-Z0-9._-]\.';
$dom_subpart = '(?:[a-zA-Z0-9][a-zA-Z0-9._-]\.)';
$dom_tldpart = '[a-zA-Z]{2,5}';
$domain_part = "$dom_subpart$dom_mainpart$dom_tldpart";
$regex = "$protocol?$user_part@$domain_part";
return preg_match("/^$regex$/",$email);
}
Sieht irgendwie fehlerhaft aus. Zumindest der Domain-Part scheint Umlautdomains und längere TLDs (.museum z.B.) nicht zu berücksichtigen.
Meiner Ansicht nach ist es besser, eher invalide Mails zuzulassen, als gültige Mail-Adressen zu behindern, solange man natürlich so Sachen wie Code-Injection ausschließt.
Jonathan
--
[Selfcode:](http://emmanuel.dammerer.at/selfcode.html) [ie:( fl:{ br:> va:) ls:& fo:) rl:? ss:} de:> js:| ch:? mo:} zu:)](http://www.peter.in-berlin.de/projekte/selfcode/?code=ie%3A%28+fl%3A%7B+br%3A%3E+va%3A%29+ls%3A%26+fo%3A%29+rl%3A%3F+ss%3A%7D+de%3A%3E+js%3A%7C+ch%3A%3F+mo%3A%7D+zu%3A%29)