Hallo,
ich habe ein Problem mit einem php-Mailer und zwar soll dort mittels Checkbox geprüft werden, ob die AGB's gelesen wurden oder nicht und nur wenn "ja" angeklickt wurde, soll das Formular abgeschickt werden. Bei "nein" sollte eine Meldung ausgegeben werden.
Das Formular funktioniert soweit auch. Nur egal, was in der Checkbox angeben wurde, wird das Formular gesendet.
Hat jemand einen Tipp für mich, wo hier der Fehler liegt ?
PHP-Code:
<form name="kontaktFormular" method="post" action="<?=$_SERVER[PHP_SELF]; ?>" onSubmit="return checkboxchecker()" >
<table width="55%" border="0" align="left">
<tr>
<td colspan="5"><div align="justify">
<SCRIPT LANGUAGE="JavaScript">
<!--
if(AGB.checked){
alert("Sie müssen unsere AGB's durchlesen und zustimmen.");
return false;
}
//-->
</script>
<?php
$formularAnzeigen = false; if (!empty($_POST["senden"]) && ( empty($_POST["vorname"]) || empty($_POST["nachname"]) || empty($_POST["strasse"]) || empty($_POST["plz"]) || empty($_POST["eMail"]) || empty($_POST["telefon"]))) { $formularAnzeigen = true;
echo '<span style="color: #996633; font-size:12pt; font-family:arial; ">Bitte alle Pflichtfelder ausfuellen bzw. Telefonnummer prüfen.</span>';
} else if (!empty($_POST["senden"]) && !isEmail($_POST["eMail"])) { $formularAnzeigen = true;
echo '<span style="color: #996633; font-size:12pt; font-family:arial; ">Die E-Mail-Adresse ist nicht korrekt.</span>';
} else if (empty($_POST["senden"])) { $formularAnzeigen = true; } if ($formularAnzeigen) {
?>
<br>
<span class="style5">
Sie suchen ein Geschenk? </span>
<p class="style5">Füllen Sie einfach unten stehendes Formular aus und wählen Sie den gewünschten Gutscheinwert. </div> </td>
</tr>
<tr>
<td height="30" class="style5"><div align="left"> Vorname:*</div></td>
<td height="30" class="style5"><div align="right">
<input name="vorname" type="text" id="vorname" value="<?=$_POST['vorname']; ?>" size="20"/>
</div></td>
<td height="30" class="style5"></td>
<td height="30" class="style5"><div align="left">Name:*</div></td>
<td height="30" class="style5"><input name="nachname" type="text" id="nachname" value="<?=$_POST['nachname']; ?>" size="20"/></td>
</tr>
<tr>
<td height="30" class="style5"><div align="left">Strasse:*</div></td>
<td height="30" class="style5"><div align="right">
<input name="strasse" type="text" id="strasse" value="<?=$_POST['strasse']; ?>" size="20" />
</div></td>
<td height="30" class="style5"></td>
<td height="30" class="style5"><div align="left">PLZ/Ort:* </div></td>
<td height="30" class="style5"><input name="plz" type="text" id="plz" value="<?=$_POST['plz']; ?>" size="20"/></td>
</tr>
<tr>
<td height="30" class="style5">Telefon:*</td>
<td height="30" class="style5"><div align="right">
<input name="telefon" type="text" id="telefon" value="<?=$_POST['telefon']; ?>" size="20"/>
</div></td>
<td height="30" class="style5"></td>
<td height="30" class="style5"><div align="left">E-Mail:*</div></td>
<td height="30" class="style5"><input name="eMail" type="text" id="eMail" value="<?=$_POST['eMail']; ?>" size="20"/></td>
</tr>
<tr>
<td class="style2"> <label>
<span class="style5">Gutscheinwert: </span> </label></td>
<td class="style2"><div align="right">
<select name="wert" id="wert">
<option selected>25,00 Euro</option>
<option>50,00 Euro</option>
<option>75,00 Euro</option>
<option>100,00 Euro</option>
<option>keine Auswahl</option>
</select>
</div></td>
<td class="style2"> </td>
<td colspan="2" class="style5">zuzüglich € 3,00 Versand- und Bearbeitungskosten </td>
</tr>
<tr>
<td class="style5">gewünschter Gutscheinwert: </td>
<td class="style5"><label>
<div align="right">
<input name="wert" type="text" id="wert" value="<?=$_POST['wert']; ?>" size="20">
</div>
</label></td>
<td class="style5"> </td>
<td class="style5"> </td>
<td class="style5"> </td>
</tr>
<tr>
<td colspan="5" class="style5"><div align="center">
<br />
Ihre Nachricht </div></td>
</tr>
<tr>
<td colspan="5" class="text"><div align="center">
<textarea name="nachricht" cols="60" rows="4"><?=$_POST['nachricht'];?></textarea>
</div></td>
</tr>
<tr>
<td valign="middle" class="style5">Kopie: </td>
<td colspan="4" valign="middle" class="style5"><input name="kopie" type="checkbox" value="checked"<?=$_POST['kopie']; ?> />
Ja, ich möchte eine Kopie meiner Gutschein-Bestellung erhalten.</td>
</tr>
<tr>
<td valign="middle" class="style5">AGB'S *</td>
<td colspan="4" valign="middle" class="style5">Haben Sie unsere <a href="agb.htm">AGB</a> gelesen.
<input type="radio" name="AGB" value="einverstanden" id="ja"> <label for="ja">Ja</label> <input type="radio" name="AGB" id="nein" checked> <label for="nein">Nein</label>
<label></label></td>
</tr>
<tr>
<td height="32" valign="middle" ><br /></td>
<td valign="middle" class="text"><p>
<input name="senden" type="submit" value="Senden" />
</p> </td>
<td valign="middle" class="text"></td>
<td colspan="2" valign="middle" class="text"><p class="style5">
<input type="reset" name="reset" value="Zurücksetzen" />
<?php echo''; } else {
$header = "From: ".$eMail." <".$eMail.">\n";
$header .= "Reply-To: ".$eMail." <".$eMail.">\n";
$header .= "Content-Type: text/plain";
$mail="";
$mail="from:".$mail;
$vorname = $_POST['vorname'];
$nachname = $_POST['nachname'];
$strasse = $_POST['strasse'];
$plz = $_POST['plz'];
$telefon = $_POST['telefon'];
$eMail = $_POST['eMail'];
$wert = $_POST['wert'];
$nachricht = $_POST['nachricht'];
$kopie = $_POST['kopie'];
$text="Sehr geehrte(r) $vorname $nachname,\n
Sie erhalten von mir eine persönliche Bestätigung per E-Mail
$anfrage="
Vorname: $vorname
Nachname: $nachname
Strasse: $strasse
PLZ/Ort: $plz
Telefon: $telefon
E-Mail: $eMail
Wert: $wert
Nachricht:n$nachricht";
if (@mail("", "Eine Gutscheinbestellung ",$anfrage,$header))
{ echo "<font size="3\" face=\"Arial, sans-serif\" color=\"#996633\"><br/><b>Vielen Dank für Ihre Gutscheinbestellung. In Kürze erhalten Sie per Mail eine Bestätigung Ihrer Bestellung </b></font>
<br/><font size=\"3\" face=\"Arial, sans-serif\" color=\"#996633\"><br/><b>Viel Spass </b></font>";
}
if ($_POST['kopie']) {
if (@mail($_POST['eMail'], "Eine Gutscheinbestellung ", $text,$mail)) { echo "<font size=\"3\" face=\"Arial, sans-serif\" color=\"#996633\"><br/><br/></font> "; } } }
function isEmail($email) {
$nonascii = "\x80-\xff";
$nqtext = "[^\\$nonascii\015\012\"]";
$qchar = "\\[^$nonascii]";
$protocol = "(?:mailto:)";
$normuser = "[a-zA-Z0-9][a-zA-Z0-9_.-]*";
$quotedstring = "\"(?:$nqtext|$qchar)+\"";
$user_part = "(?:$normuser|$quotedstring)";
$dom_mainpart = "[a-zA-Z0-9][a-zA-Z0-9._-]*\.";
$dom_subpart = "(?:[a-zA-Z0-9][a-zA-Z0-9._-]*\.)*";
$dom_tldpart = "[a-zA-Z]{2,5}";
$domain_part = "$dom_subpart$dom_mainpart$dom_tldpart";
$regex = "$protocol?$user_part\@$domain_part";
if (preg_match("/^$regex$/",$email)) { return true; } return false; }
?>
</p> </td>
</tr>
</table>
</form></td>
</tr>
</table>