Seite 1 von 1

eMail-Eingabe im Newsletter-Modul

Verfasst: Mi 29. Jan 2003, 14:38
von Werner
Sven hat im Forum "Bugtracker" nachfolgende Zeile zur Überprüfung der eMailadresse im Newsletter-Modul empfohlen:

} elseif (!eregi("^[a-z0-9][a-z0-9\-\_\.]{1,63}\@[a-z0-9][a-z0-9\-\_\.]{2,63}\.[a-z]{2,4}$",$email)) {

Ich habe diese eMail-Überprüfung eingebaut und kann trotzdem z.B. folgende eMail-Adresse nicht eingeben: werner@test-tester.de !

Bei allen eMail-Adressen, welche ein Minuszeichen (Bindestrich) enthalten, kommt die Fehlermeldung "Die eMail Adresse hat nicht das richtige Format"

Hat jemand einen Tip für mich ?

Danke,
Werner

Verfasst: Mi 29. Jan 2003, 16:20
von gustaf
Wenn Du nicht soviel wert auf Genauigkeit legst:

!eregi("^[a-z0-9]+([_\\.-][a-z0-9]+)*@([a-z0-9]+([\.-][a-z0-9]+))*$",$mail)

oder

!eregi("^[a-z0-9]+([_.-][a-z0-9]+)*@([a-z0-9]+([.-][a-z0-9]+)*)+\\.[a-z]{2,4}$", $mail)

Der sollte funktionieren (hoffe ich :wink:).

--Gustaf

eMail-Eingabe im Newsletter-Modul

Verfasst: Mi 29. Jan 2003, 18:57
von Werner
Hallo Gustaf,

jetzt klappen auch die Minuszeichen in der eMail mit folgender Abfrage:

"^[a-z0-9]+([_.-][a-z0-9]+)*@([a-z0-9]+([.-][a-z0-9]+)*)+\\.[a-z]{2,4}$"

Jetzt wäre nur noch interessant warum Sven's Überprüfung bei mir nicht klappt ?

Vielen Dank,
Werner

Verfasst: Sa 1. Feb 2003, 00:47
von Sven777b
... liegt wohl daran, dass man das - bei PHP nicht maskieren muss ( \- ) - bei Perl würde die von dir verwendete Lösung zu einem Fehler führen.
Ich habe meine RegExp - Kenntnisse aber nunmal aus Perl und bin davon ausgegangen, dass es bei preg_match genauso läuft (steht ja auch so in der Doku) - naja - man kann sich irren.

Verfasst: Sa 1. Feb 2003, 10:56
von Björn
wieder bugtracker...