Hab ein Problem: Wenn ich eine Email überprüfe mit preg_match und die Adresse gültig ist wird sie ordnungsgemäß in die DB eingetragen.
Ist die Email jedoch ungültig springt er mir zur Seite guestbook.php. Des else Teil der preg_match Abfrage wird überhaupt nicht beachtet. Woran liegt das?
wenn ich es jedoch so mache klappt es.
Woran liegt das?
Mfg Markus
Ist die Email jedoch ungültig springt er mir zur Seite guestbook.php. Des else Teil der preg_match Abfrage wird überhaupt nicht beachtet. Woran liegt das?
PHP-Code:
if(strlen(@$_POST['email']) == null)
{
$sql = mysql_query("insert into guestbook(name,comment,date,time)values('$name','$text','$date','$time')") or die(mysql_errno().": ".mysql_error());
}
else
{
if(preg_match("!^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$!",$_POST['email']))
{
$sql = mysql_query("insert into guestbook(name,comment,date,time,email)values('$name','$text','$date','$time','$_POST[email]')") or die(mysql_errno().": ".mysql_error());
}
else
{
unset($_POST['send']);
header ("Location: add_guest_comment.php?name2=".@$_POST['name']."&email2=error&comment2=".$_POST['comment']); //ist das Eingabefenster. Die Textboxen
werden dann mit den Feldern erneut gefüllt so, dass der Text nicht verloren geht. Der header wird allerdings nicht ausgeführ und ich weiß nicht warum.
}
}
header ("Location: guestbook.php");
PHP-Code:
if(strlen(@$_POST['email']) == null)
{
$sql = mysql_query("insert into guestbook(name,comment,date,time)values('$name','$text','$date','$time')") or die(mysql_errno().": ".mysql_error());
header ("Location: guestbook.php");
}
else
{
if(preg_match("!^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$!",$_POST['email']))
{
$sql = mysql_query("insert into guestbook(name,comment,date,time,email)values('$name','$text','$date','$time','$_POST[email]')") or die(mysql_errno().": ".mysql_error());
header ("Location: guestbook.php");
}
else
{
unset($_POST['send']);
header ("Location: add_guest_comment.php?name2=".@$_POST['name']."&email2=error&comment2=".$_POST['comment']);
}
}
Mfg Markus
Kommentar