Mailadresse gültig?



  • Hallo!

    Wie kann ich feststellen ob eine Mailadresse gültig ist oder nicht (Vom String her, nicht ob sie wirklich existiert...)? Ich weiß, dass es mit preg(); und so geht, aber wie? Und wie geht man mit sowas um? Ich kapier das immer nicht mit dem preg();... Danke für eure Hilfe!



  • Windoof schrieb:

    Hallo!

    Wie kann ich feststellen ob eine Mailadresse gültig ist oder nicht (Vom String her, nicht ob sie wirklich existiert...)? Ich weiß, dass es mit preg(); und so geht, aber wie? Und wie geht man mit sowas um? Ich kapier das immer nicht mit dem preg();... Danke für eure Hilfe!

    Ich benutze immer

    $mail = "user@domain";
    if (!ereg("([0-9]|[a-zA-Z])*@([0-9]|[a-zA-Z])*\.([0-9]|[a-zA-Z])*", $mail))
    {
        /* Fehler */
    }
    


  • Ich hab's jetzt so gemacht (und endlich mal ereg/preg kapiert):

    if(!ereg("([0-9]|[A-Z]|[-_])*@([0-9]|[A-Z]|[-_])*\.([A-Z]{2,4})",strtoupper($mail))) echo "Keine gültige EMail!"; else //...
    

    EDIT: Bei deinem durften keine Bindestriche, Unterstriche oder Punkte dabei sein... das ist aber gültig. So funktioniert es einwandfrei.



  • Unterstriche sind erlaubt?



  • Wieso nicht - hast du noch nie eine Mail-Adresse mit Unterstrich gesehen 😕



  • dreaddy schrieb:

    Unterstriche sind erlaubt?

    Ja, ich hatte früher eine email mit Unterstrsichen.



  • Windoof schrieb:

    if(!ereg("([0-9]|[A-Z]|[-_])*@([0-9]|[A-Z]|[-_])*\.([A-Z]{2,4})",strtoupper($mail))) echo "Keine gültige EMail!"; else //...
    

    Wäre etwas a'la

    if(!preg_match('~([0-9a-z\-_]+)@([0-9a-z\-_]+)\.([a-z]{2,4})~i', $mail))
    

    nicht günstiger?

    Sonst wäre ja auch '@.' eine gültige Adresse.


Anmelden zum Antworten