Noch nicht viel geschrieben
Hallo =)
Ich hoffe einer von Euch kann mir helfen, bin langsam am Verzweifeln.
Ich habe ein Kontaktformular, welches keine E-Mail nicht verschickt. Bekomme zwar den Text "Vielen Dank! Die Mail wurde erfolgreich verschickt." aber es kommt nichts an.
Egal wie oft ich den Code auch anstarre und analysiere, der Fehler möchte sich mir einfach nicht offenbaren.
Wenn ich es auf das absolut wesentliche reduziere, dann bekomme ich eine Mail. Also liegt der Fehler definitiv in meinem Code.
Wenn ich die übermittelten Daten am Schluß als "echo" ausgebe, dann gibt er mir auch die richtigen Daten aus, aber leider werden die nicht an die Mail versand.
Ich hoffe einer von Euch kann mir helfen, bin langsam am Verzweifeln.
Ich habe ein Kontaktformular, welches keine E-Mail nicht verschickt. Bekomme zwar den Text "Vielen Dank! Die Mail wurde erfolgreich verschickt." aber es kommt nichts an.
Egal wie oft ich den Code auch anstarre und analysiere, der Fehler möchte sich mir einfach nicht offenbaren.
Wenn ich es auf das absolut wesentliche reduziere, dann bekomme ich eine Mail. Also liegt der Fehler definitiv in meinem Code.
Wenn ich die übermittelten Daten am Schluß als "echo" ausgebe, dann gibt er mir auch die richtigen Daten aus, aber leider werden die nicht an die Mail versand.
PHP:
<?php
# Prüfen ob Formular abgeschickt wurde (anhand vom Namen des Submit-Buttons
# Wenn ja wird der "mail-Teil" ausgeführt
# --------------------------------------------------------------------------
if (isset($_POST["submit"]))
{
// Empfänger der E-Mail
$recipient = "test@mail.de";
//
# DATEN EINLESEN -----------------------------------------------------------
# --------------------------------------------------------------------------
$subject = $_POST['betreff'];
$vorname = $_POST['vorname'];
$name = $_POST['name'];
$mail = $_POST['mail'];
$nachricht = $_POST['nachricht'];
$header = 'MIME-Version: 1.0' . "\r\n";
$header .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
# --------------------------------------------------------------------------
if (!eregi("^[A-Za-z0-9]+((\\.|!|_|\\+|\\-)[A-Za-z0-9]+)*@([A-Za-z0-9]+(\\.|\\-))+[A-Za-z0-9]{2,4}$", $mail)){
$valid_mail = "no";
$valid_mail_text = "Bitte eine gültige E-Mail Adresse eingeben.";
}
if ($betreff == "" || $vorname == "" || $name == "" || $mail == "" || $nachricht == "" || $valid_mail == "no"){
echo "<h3 class=\"menuesort3h3\">Fehler bei der Übermittlung</h3><p style=\"font-size:12px; line-height:16px; width:432px;\">Nicht alle Felder wurden ausgefüllt</p>";
echo "<br/>$valid_mail_text<br/>";
echo "<h3 class=\"menuesort3h3\">Genauere Fehlerursache:</h3>";
echo "<ul style=\"font-size:12px; line-height:16px; font-weight:bold;\">";
if(isset($_SESSION['captcha_spam']) AND $_POST["sicherheitscode"] == $_SESSION['captcha_spam']){
unset($_SESSION['captcha_spam']);
}
else{
echo '<li>Der Sicherheitscode wurde falsch eingegeben</li>';
}
if ($subject == "") {echo "<li>Die Betreffzeile wurde nicht ausgewählt</li>";}
if ($vorname == "") {echo "<li>Der Vornamen wurde nicht angegeben</li>";}
if ($name == "") {echo "<li>Der Nachnamen wurde nicht angegeben</li>";}
if ($mail == "" || $valid_mail == "no") {echo "<li>Die eingegebene E-Mail-Adresse ist ungültig</li>";}
if ($nachricht == "") { echo "<li>Es wurde keine Nachricht eingegeben</li>";}
echo "</ul>";
# BETREFFZEILEN ABFRAGE
# ---------------------------------------------------------------------------------------------------
$subject = array('betreffzeile1' => 'Betreff 1', 'betreffzeile2' => 'Betreff 2', 'betreffzeile3' => 'Betreff 3', 'betreffzeile4' => 'Betreff 4', 'betreffzeile5' => 'Betreff 5');
# ---------------------------------------------------------------------------------------------------
echo "<p style=\"font-size:12px; margin-top:20px;\"><a href='javascript:history.back()'>Zurück zum Kontaktformular</a></p>";
end;
}
else
{
# SPAM-SCHUTZ
# ---------------------------------------------------------------------------------------
$absender = preg_replace( "/[^a-z0-9 !?:;,.\/_\-=+@#$&\*\(\)]/im", "", $_POST['mail'] );
$absender = preg_replace( "/(content-type:|bcc:|cc:|to:|from:)/im", "", $absender );
# ---------------------------------------------------------------------------------------
// Inhalt der E-Mail:
$EndNachricht =
"Name: '.$vorname.' '.$name.' \n
E-Mail: '.$mail.' \n\n
Nachricht:\n '.$nachricht.' \n \n";
$txt = preg_replace( "/(content-type:|bcc:|cc:|to:|from:)/im", "", $EndNachricht );
$txt2 = htmlspecialchars($txt, ENT_NOQUOTES);
mail($recipient,$subject,$txt2,"FROM: $absender\n",$header);
echo "<h3 class=\"menuesort3h3\">Vielen Dank!</h3>";
echo "<p style=\"font-size:12px; width:432px;\">Die Mail wurde erfolgreich verschickt.</p>";
}
}
else{
?>
HTML:
<div id="kontaktformular">
<form name="form" method="post" action="<?php $_SERVER['PHP_SELF'];?>">
<table width="400" border="0" align="left" cellpadding="3" cellspacing="0" id="teilnehmen">
<tr>
<td>Betreff*:</td>
<td>
<select name="betreff" value="<?php echo $_POST['betreff'];?>" class="kontaktboxinput2">
<option value="">Bitte wählen Sie eine Betreffzeile aus</option>
<option value="betreffzeile1">Betreff 1</option>
<option value="betreffzeile2">Betreff 2</option>
<option value="betreffzeile3">Betreff 3</option>
<option value="betreffzeile4">Betreff 4</option>
<option value="betreffzeile5">Betreff 5</option>
</select>
</td>
</tr>
<tr>
<td>Vorname*:</td>
<td>
<input name="vorname" type="text" value="<?php echo $_POST['vorname'];?>" class="kontaktboxinput">
</td>
</tr>
<tr>
<td>Nachname*:</td>
<td>
<input name="name" type="text" value="<?php echo $_POST['name'];?>" class="kontaktboxinput">
</td>
</tr>
<tr>
<td>E-Mail*:</td>
<td>
<input name="mail" type="text" value="<?php echo $_POST['mail'];?>" class="kontaktboxinput">
</td>
</tr>
<tr>
<td style="vertical-align:text-top;">Nachricht*:</td>
<td>
<textarea class="kontaktboxinput" name="nachricht" rows="7" cols="42"><?php echo $_POST['nachricht'];?></textarea>
</td>
</tr>
<tr>
<td><label for="sicherheitscode" class="input_description">Sicherheitscode:</label></td>
<td><img src="/shop/captcha/captcha.php" border="0" title="Sicherheitscode" alt="code" /></td>
</tr>
<tr>
<td>
<label for="antwort-sicherheitscode" class="input_description">Eingabe Sicherheitscode:</label>
</td>
<td>
<input type="text" name="sicherheitscode" id="sicherheitscode" class="input_wide"/>
</td>
</tr>
<tr>
<td colspan="2" align="right">
<label>
<input type="submit" name="submit" id="btn-mailabschicken" value="">
<input name="update" type="hidden" id="update" value="true" />
</label>
</td>
</tr>
</table>
</form>
</div>
<?php } ?>