Thread Verifizieren einer E-Mail-Adresse (7 answers)
Opened by Gast at 2005-06-04 00:06

Thorsten
 2005-06-04 04:21
#5032 #5032
User since
2005-06-04
2 Artikel
BenutzerIn
[default_avatar]
Danke Keanuf!

Ich hab ja gar nichts dagegen, ein vordef. Modul einzubinden, weiß halt nur nicht wie...
Außerdem muss dieses Modul ja offenbar auf dem Server installiert werden - den Zugriff habe ich aber eh nicht...

Zwar hat der Autor des Skripts als Variablen $login und $host verwendet. Mit Einloggen hat das Skript aber nichts zu tun - ist ein stinknormales FormMail Skript (siehe http://www.envex.com/software/formmail.html).

Da ich kein Perl-Programmierer bin und dies auch nicht werden möchte, hab ich mich dieses freien Skripts bedient, das mir alles bietet, was ich benötige... Ist halt nur etwas "knauserig" bei der E-Mail-Überprüfung.

Wenn ich übrigens die von dir vorgeschlagene Änderung vornehme, dann akzeptiert das Skript E-Mail-Adressen mit "-" vor dem "@", aber wiederum keine E-Mail-Adressen à la name@erstens-zweitens-drittens.com, also mit zwei "-" nach dem @.

Ändere ich es genau umgekehrt, also wie folgt:
Code: (dl )
1
2
    $login =~ s/[\.\-]//g;
   $host =~ s/[\.\-]//g;


... dann scheint das Skript jedwede Form anzunehmen.

Habe mich jetzt mal etwas bei SELFHTML durch den Perl Bereich geklickt...

Verstehe ich das richtig, dass dieser Teil des Skripts (siehe erstes Posting) bei einer angegebenen E-Mail-Adresse die Adresse in einen Teil vor und einen nach dem "@" auftrennt, dann jeweils "." (siehe $login) und/oder "-" entfernt (siehe $host) entfernt und schließlich per /\W/ prüft, ob dann $login oder $host noch ein Zeichen enthält, was weder Buchstabe noch Ziffer noch Unterstrich ist?

Wenn dem so ist, müsste das Skript nach meiner Änderung nun alle E-Mail-Adressen akzeptieren, die aus Buchstaben, Ziffer, Unterstrich, Bindestrich und Punkt zusammengesetzt sind... Oder?

Das würde mir zumindest reichen...

Ich verstehe dann nur noch nicht, warum bei deinem Vorschlag E-Mail-Adressen mit einem Bindestrich vor dem "@" akzeptiert werden...?!

Was genau bedeutet
Code: (dl )
$login =~ s/\.//g;

bzw.
Code: (dl )
$login =~ s/[\.\-]//g;

?

Danke jedenfalls für deinen Hinweis!

Der Testcode funzt bei mir nicht... Gibt nur die eingegebene E-Mail-Adresse wieder, aber jeweils keine Daten hinter den Doppelpunkten.

View full thread Verifizieren einer E-Mail-Adresse