clevo: Mailadresse testen

Beitrag lesen

Hallo ich hab grad ein Kontaktformular geschrieben. Ich wollte gerne noch einen Test der Mailadresse einbauen. Mein Script sieht zur Zeit so aus:

<body>
<h1>Kontakt</h1>
<form action="<?php echo $PHP_SELF ?>"  method="POST">
<?php
if (isset($_POST['submit']))
{
$feld = "";
if (strlen($_REQUEST['mail'])==0) {
$feld = "EMail";
$art = "Keine Eingabe";
}
if (preg_match("/[1]+(.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+.)+([a-zA-Z]{2,4})/", $_REQUEST["mail"])) {
$feld = "Email";
$art = "Keine Emailadresse";
}
if (preg_match("/[^a-zßöüä_.- ]/i", $_REQUEST['name'])) {
$feld = "Name";
$art = "Ung&uuml;ltige Zeichen";
}
if (strlen($_REQUEST['text1'])==0) {
$feld = "Ihre Nachricht";
$art = "Keine Eingabe";
}
if ($tele == "y") {
if (strlen($_REQUEST['tel'])==0) {
$feld = "Telefon";
$art = "Keine Eingabe";
}
else if (preg_match("/[^0-9+\ /]/", $_REQUEST['tel'])) {
$feld = "Telefonnumer";
$art = "Ung&uuml;ltige Zeichen";
}
}
else{
if (preg_match("/[^0-9+\ /]/", $_REQUEST['tel'])) {
$feld = "Telefonnumer";
$art = "Ung&uuml;ltige Zeichen";
}
}
if ($feld != "")
{
echo "<center>$art bei Feld "$feld"<br>";
echo '<a href="'.$_SERVER['PHP_SELF'].'">&auml;ndern</a></center>';
}
else{
$extra = "From: $mail\r\n";
$extra .= "Content-Type: text/html\r\n Content-Transfer-Encoding:8bit\r\n";
$extra .= "X-Mailer: PHP ". phpversion();
if ($tele == "y") $text = "<body  bgcolor='#4A0000'><table>
<tr><td><b><font color='#999545'>Anfrage von :</font></b></td><td><font color='#999545'>$name</font></td></tr>
<tr><td><b><font color='#999545'>Telefonnummer :</font></b></td><td><font color='#999545'>$tel</font></td></tr>
<tr><td colspan='2'><b><font color='#999545'>R&uuml;ckruf erw&uuml;nscht!</font></b></td></tr>
<tr><td width='140'><b><font color='#999545'>Anfrage :</font></b></td><td width='200'><font color='#999545'>$text1</font></td></tr>
</table>";
else $text = "<body  bgcolor='#4A0000'><table>
<tr><td><b><font color='#999545'>Anfrage von :</font></b></td><td><font color='#999545'>$name</font></td></tr>
<tr><td><b><font color='#999545'>Telefonnummer :</font></b></td><td><font color='#999545'>$tel</font></td></tr>
<tr><td width='120'><b><font color='#999545'>Anfrage :</font></b></td><td wisth='200'><font color='#999545'>$text1</font></td></tr>
</table>";
mail("webmaster@himmelsbaeckerei.de", "Anfrage", $text, $extra);
echo '<h5>Ihre Email wurde an uns gesendet!<h5><br>Herzlichen Dank für die Anfrage.';
}
}
else
{
echo"<table align='center'>
    <tr>
        <td>Name </td>
        <td><input type='text' class='inputbox' name='name' size='33'></td>
    </tr>
    <tr>
        <td>EMail*&nbsp;</td>
        <td><input type='text' class='inputbox' name='mail' size='33'></td>
    </tr>
    <tr>
        <td>Telefon&nbsp;</td>
        <td><input type='text' class='inputbox' name='tel' size='33'></td>
    </tr>
    <tr>
        <td></td>
        <td><input type='checkbox' name='tele' value='y'>&nbsp;&nbsp;Bitte rufen Sie mich zur&uuml;ck.</td>
    </tr>
    <tr>
        <td>Ihre Nachricht*&nbsp;</td>
        <td><textarea name='text1' class='inputbox' rows='5' cols='30'></textarea></td>
    </tr>
 <tr>
        <td colspan='2'><center>* Erforderlich</center>
  </td>
 </tr>
 <tr>
        <td colspan='2'><center><input type='submit' class='select' name='submit' value='Absenden'>&nbsp;&nbsp;&nbsp;
  <input type='reset' class='select' value='Zur&uuml;cksetzen'></center></td>
 </tr>
</table>";
 }
?>
</form>
</body>

Der Test der Mailadresse ob sie mit @ Zeichen ist funktioniert aber nicht. Nur ob überhaupt etwas eingegeben ist. Was habe ich falsch gemacht?
Wäre cool wenn mir jemand helfen könnte.


  1. _a-zA-Z0-9- ↩︎