• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Wildcard

Status
Für weitere Antworten geschlossen.

Raider

Neues Mitglied
Hi

Wie kann ich überprüfen ob es beim $_POST['addy'] um eine e-mail-adresse handelt? dabei sollten lediglich @ und . (punkt) enthalten sein.
 
Danke.

ich verstehe nicht alles bei diesem beispiel. z.b.: muss es beim list($user, $host) nicht erst mal eine array entstehen damit die variablen auch einen wert haben?
 
ja, die funktion explode => PHP: explode - Manual teilt die mailadresse beim @ in zwei teile (der rückgabewert von explode ist ein array).. das was links davon steht landet in $user und das was rechts vom @ steht landet in $host
 
ach soo ... die funktion kenne ich von anderen sprachen. habe schon danach gesucht, danke :)

ich zweifle aber ein weniger an dem DNS-Server. ich habe das script jetzt mal ausprobiert und egal wie die mail-adresse heisst (ob [email protected] oder [email protected]), die ausgabe ist IMMER "Mail ist anscheindend zustellbar."

es sei dem ich gebe kein @-zeichen ein. dann bekomme ich logischerweise eine fehlermeldung.
 
PHP:
if(!preg_match( '/^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)+/' , $mailadresse)) $fehler = "Mailadresse nicht ok....!";
die funktionen prüfen immer nur, ob alle erfordernisse einer mailadresse erfüllt sind. es könnte beide adressen ja geben.
des weiteren sollte man auf umbrüche im subject (betreff) testen, da sonst massenmails versendet werden können und das sicher verdächtig ist.

PHP:
elseif(stristr($subject,"\r") or (stristr($subject,"\n"))) $fehler = "Betreff ungültig, keine Umbrüche erlaubt.....!";
 
Zuletzt bearbeitet von einem Moderator:
Status
Für weitere Antworten geschlossen.
Zurück
Oben