WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   mail adresse mit neuen domäns prüfen (http://www.wcm.at/forum/showthread.php?t=130632)

Potassium 06.04.2004 20:42

mail adresse mit neuen domäns prüfen
 
ich möchte eingegeben mailadresse auf richtigkeit überprüfen und da ist mir eingefallen das es mit einem "simplen"
PHP-Code:

if(ereg("^([A-Za-z_\.0-9]*)@([A-Za-z0-9_]*)\.([A-Za-z0-9\.]*)$",$Mail)) { 

nicht mehr getan ist weil es ja auch umlautdomains gibt.
nun meine frage: wie würde eine aktulle überprüfung aussehen?

btw: was macht ^ am anfang und $ am ende und * in der mitte????

Who-T 06.04.2004 21:27

frag mich nicht wie du umlaute reinbringst aber vielleicht kann regex ja

[A-Za-z_.0-9üöäÜÖÄ]
vielleicht geht das ja


anyway:

^ heißt anfang des strings
$ ende des strings
^[A-Z]$ wäre jeder einzelne großbuchstabe

* bestimmt die häufigkeit (0 bis viele) des vorherigen ausdrucks

jak 06.04.2004 21:51

Du könntest ja eine Kopie der Mailadresse in einer Hilfsvariable speichern, in der daß ä durch ae ersetzen und wenn die überprüfung ok ist die originale Adresse verwenden.

Oder du löst die Domain in ihren Punycode auf (frag mich nicht wie das geht...).

Jak

käptn 06.04.2004 22:06

1.) ereg* ist böse! Man nehme preg*
2.) Man nehme außerdem [[:alpha:]]

~

Potassium 06.04.2004 22:49

Zitat:

Original geschrieben von käptn
1.) ereg* ist böse! Man nehme preg*
2.) Man nehme außerdem [[:alpha:]]

~

ad 1 begründung? und welches von denen? preg_grep nehme ich an oder?
ad2: WTF? PHP hilfe kennt das ned. codebeispiel :D *bittebitte*

Who-T 06.04.2004 23:11

[[:alpha:]] sind alle alphanumerischen zeichen -> [A-Za-z0-9]

Potassium 06.04.2004 23:17

ok nun hab ichs so:
PHP-Code:

if(ereg("^([[:alpha:]]_-\\.*)@([[:alpha:]]_-\\.*)\.([[:alpha:]]_-\\.*)$",$Mail)) { 

sind bei alpha die umlaute auch schon dabei?

Who-T 06.04.2004 23:23

wieso probierst du es eigentlich net aus?
wenn du eh schon den regex hast?

Potassium 06.04.2004 23:27

Zitat:

Original geschrieben von Who-T
wieso probierst du es eigentlich net aus?
wenn du eh schon den regex hast?

regex?

edit: ajo das obrige funzt ned :(
er erkennt jeder mailadresse als falsch. :heul:

Who-T 06.04.2004 23:35

regex = regular expression


bei dem obigen ist ein fehler in der klammerung

du musst die _/. usw mitklammern
probier mal [[[:alpha:]]-_\.*]


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:24 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag