Emailvalidierung
Christoph
- php
0 dave0 Henryk Plötz
Hallo liebe Forumler,
ich habe da so ein schönes Kontaktformular womit ich auch die Emailadresse überprüfen will aber irgendwie klappt das nicht ;(
hier mal ein Auszug aus meinem Code:
<?php
$flag_okay=1;
...
if($HTTP_POST_VARS['email'] == "")
{
$msg .= "Es wurde keine Emailadresse angegeben!<br>";
$flag_okay=0;
$email = trim($HTTP_POST_VARS['email']);
if(!preg_match("/[1]([-_.]?[0-9a-zA-Z])*@0-9a-zA-Z*.[a-zA-Z]{2,}$/i", $email))
{
$msg .= "Dies ist keine gültige Emailadresse!<br>";
$flag_okay=0;
}
}
if($flag_okay=='1')
{
...
?>
hier dann kommt das html Zeugs...
...
<input type="text" name="email" size="50" maxlength="50" value="<?php if(isset($HTTP_POST_VARS['email'])) print htmlspecialchars($HTTP_POST_VARS["email"]); ?>">
...
Im Grunde genommen juckt es ihn nicht wenn was falsches drin steht, er meckert nur wenn das ganze Emailfeld leer ist, sonst wenn ich auch nur ein Leerzeichen mach geht er sofort in die nächste if über... was ist daran falsch? Wo liegt mein Denkfehler?
Liebe Grüße
Christoph
0-9a-zA-Z ↩︎
Hallo zurück,
weiß ne obs stimmt, hab aber glaub ich einen Fehler in der Eile gesehen:
<?php
$flag_okay=1;...
if($HTTP_POST_VARS['email'] == "")
{
$msg .= "Es wurde keine Emailadresse angegeben!<br>";
$flag_okay=0;
»»
}
else {
$email = trim($HTTP_POST_VARS['email']);
if(!preg_match("/[1]([-_.]?[0-9a-zA-Z])*@0-9a-zA-Z*.[a-zA-Z]{2,}$/i", $email))
{
$msg .= "Dies ist keine gültige Emailadresse!<br>";
$flag_okay=0;
}
}
if($flag_okay=='1')
{...
?>
hier dann kommt das html Zeugs...
vielleicht funzt das ja... probiers mal
Gruß Dave
0-9a-zA-Z ↩︎
Moin,
if($HTTP_POST_VARS['email'] == "")
{
$msg .= "Es wurde keine Emailadresse angegeben!<br>";
$flag_okay=0;
Hier sollte bestimmte die schließende geschwungene Klammer hin, oder? Sonst wird der Rest ja nur ausgeführt, wenn die Addresse leer ist
$email = trim($HTTP_POST_VARS['email']);
Ansonsten:
15.9. Wie kann ich die Gültigkeit einer Mailadresse testen?
http://www.dclp-faq.de/q/q-mail-adresse-testen.html