Hallo!
Also ich habe auf meiner Page eine Anmeldung, jedoch werden da oft falsche Angaben gemacht.
Ich überprüfe die Email Adresse mit
[php]
ereg(„^.+@.+\…+$“, $_POST[‚email‘]
[/php]
Jedoch werden dort offt adressen angegeben wie z.b. adhjasjas@asjdkasjdkaj.de
Deswegen habe ich mir überlegt, dass ich erst prüfe ob der host existiert. Das mache ich mit fsockopen und lese den Header aus. Und prüfe ob dieser 200 ist.
Jetzt meine Frage: Gibt es auch email Dienste die keine Webseite auf der Domain haben? Sprich nicht http 200?
es gibt spaßadressen, die auf den original-host verweisen. GMX bietet sowas an, z.b. „grabschaendung@html-forum.de“ wäre eine dieser kombinationen. bei sowas gibts keine original-domain, da html-forum.de in dem falle nur eine weiterleitung (alias) ist.
also von dem her kannst dus nicht 100%ig machen.
Wieso willst du erst nen Socket öffnen etc? Kannst es doch ganz einfach mit ping() machen. Erspart schonma bischen Code und Arbeit.
We dürfte kein „Ok“ zurückgegeben werden, wenn es sich allein um einen E-Mail Server handelt. Ob man diesen dann auch mit mit dem Port 110 (Pop3) anpingen kann, weiß ich nicht. Müsste man ausprobieren.
deine prüfung ist auch nicht komplett und somit nicht wirklich sicher. wenn’s genau sein soll dann verwende sowas:
[PHP]
if(!preg_match( ‚/^([a-zA-Z0-9])+([.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-]+)+/‘ , $an)) $fehler = ‚mailadresse nicht korrekt‘;
[/PHP]
ausserdem sollten umbrüche (\n und \r) unbedingt getestet werden.