Dies ist bestimmt eine absolut einfach Frage, aber ich komme leider nicht weiter. Folgender Script soll eine Bestätigungsmail an den Absender senden. Dabei kommt folgender Fehler beim Aufruf des Formulars:No recipient addresses found in header
Es liegt an der $mail Variablen in der mail Funktion. Ich komme aber einfach nicht dahinter, wie ich es korrigieren kann, so dass die Email ausgelesen wird.
<?php
//===================
// Variablen festlegen
if ($_POST) {
$anrede= $_POST['anrede'];
$name = $_POST['name'];
$email = $_POST['mail'];
$text = $_POST['text'];
}
$webmaster ="Portal ";
$an ="mkuerten@arcor.de";
$url ="http://www.xxx.de";
$inhalt ="\nSehr geehrter Portal Nutzer.\n
Sie haben an das $webmaster während des Besuchs von $url folgendes geschrieben:\n\n
$text\n\n
Besten Dank für Ihre Anfrage. Wir werden diese sobald als möglich beantworten.\n
Bitte haben Sie Verständnis, falls sich Ihre Antwort verzögern sollte.";
$nachricht ="Über $url ist eine Nachricht von $name mit folgendem Inhalt eingetroffen:\n\n$text\n\n
$name kann über $mail erreicht werden";
//===================
//===================
// Bedingungen abfragen und Eingabe bestätigen
if ($_POST['sent']==1)
{
if(!$_POST ['name'])
{
echo '<br>Bitte geben Sie einen Namen ein.';
unset($_POST['sent']);
}
if(!$_POST ['mail'])
{
echo '<br>Bitte geben Sie Ihre E-Mail Adresse ein.';
unset($_POST['sent']);
}
if(!$_POST ['text'])
{
echo '<br>Bitte geben Sie einen Text ein.';
unset($_POST['sent']);
}
//===================
//Testen, ob alle Felder ausgefüllt sind; wenn ja Mail versenden
If($_POST['name'] AND $_POST['mail'] AND $_POST['text'])
{
echo "<br><p>Sehr geehrter" .$_POST['anrede'] .$_POST['name'], "besten Dank für Ihre Anfrage. Wir werden diese sobald als möglich beantworten.</p>";
}
else
{
//Fehlermeldung ausgeben
echo "Ihre E-Mail konnte nicht versandt werden. Versuchen Sie es bitte noch einmal.\n Besten Dank für Ihr Verständnis.";
unset($_POST['sent']);
}
}
//===================
// den "Mailer" aufrufen
@mail($an,"Portal ",$nachricht,"von: ".$mail);
@mail($email, "Bestätigung Ihrer Anfrage",$inhalt);
//===================
//===================
//===================
if (!$_POST['sent']){
?>
<h2><b>Wenn Sie Fragen, Anregungen oder Kritik haben,
freuen wir uns auf Ihre E-Mail.</b></h2></br>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<input type="hidden" name="sent" value=1>
<table border="0" cellpadding="5" cellspacing="0" bgcolor="#E0E0E0">
<tr>
<td align="left">Anrede*:</td>
<td>
<select name="anrede" size="1">
<option>Frau</option>
<option>Herr</option>
</select>
</td>
</tr
<tr>
<td align="left">Name*:</td>
<td><input type="text" name="name" id="name" value="<?php echo $_POST['name'];?>" size="30" maxlength="30"></td>
</tr>
<tr>
<td align="left">E-mail*:</td>
<td><input type="mail" name="mail" id="mail" value="<?php echo $_POST['mail'];?>" size="30" maxlength="30"></td>
</tr>
<tr>
<td align="left">Text*:</td>
<td><textarea rows=5 cols=45 name="text" id="text" </textarea></td>
</tr>
<td align="left">Formular:</td>
<td>
<input type=submit name="submit" value="E-mail senden">
<input type="reset" value=" Eintrag verwerfen">
</td>
</tr>
</table>
</form>
<?php
}
?>
Es liegt an der $mail Variablen in der mail Funktion. Ich komme aber einfach nicht dahinter, wie ich es korrigieren kann, so dass die Email ausgelesen wird.
<?php
//===================
// Variablen festlegen
if ($_POST) {
$anrede= $_POST['anrede'];
$name = $_POST['name'];
$email = $_POST['mail'];
$text = $_POST['text'];
}
$webmaster ="Portal ";
$an ="mkuerten@arcor.de";
$url ="http://www.xxx.de";
$inhalt ="\nSehr geehrter Portal Nutzer.\n
Sie haben an das $webmaster während des Besuchs von $url folgendes geschrieben:\n\n
$text\n\n
Besten Dank für Ihre Anfrage. Wir werden diese sobald als möglich beantworten.\n
Bitte haben Sie Verständnis, falls sich Ihre Antwort verzögern sollte.";
$nachricht ="Über $url ist eine Nachricht von $name mit folgendem Inhalt eingetroffen:\n\n$text\n\n
$name kann über $mail erreicht werden";
//===================
//===================
// Bedingungen abfragen und Eingabe bestätigen
if ($_POST['sent']==1)
{
if(!$_POST ['name'])
{
echo '<br>Bitte geben Sie einen Namen ein.';
unset($_POST['sent']);
}
if(!$_POST ['mail'])
{
echo '<br>Bitte geben Sie Ihre E-Mail Adresse ein.';
unset($_POST['sent']);
}
if(!$_POST ['text'])
{
echo '<br>Bitte geben Sie einen Text ein.';
unset($_POST['sent']);
}
//===================
//Testen, ob alle Felder ausgefüllt sind; wenn ja Mail versenden
If($_POST['name'] AND $_POST['mail'] AND $_POST['text'])
{
echo "<br><p>Sehr geehrter" .$_POST['anrede'] .$_POST['name'], "besten Dank für Ihre Anfrage. Wir werden diese sobald als möglich beantworten.</p>";
}
else
{
//Fehlermeldung ausgeben
echo "Ihre E-Mail konnte nicht versandt werden. Versuchen Sie es bitte noch einmal.\n Besten Dank für Ihr Verständnis.";
unset($_POST['sent']);
}
}
//===================
// den "Mailer" aufrufen
@mail($an,"Portal ",$nachricht,"von: ".$mail);
@mail($email, "Bestätigung Ihrer Anfrage",$inhalt);
//===================
//===================
//===================
if (!$_POST['sent']){
?>
<h2><b>Wenn Sie Fragen, Anregungen oder Kritik haben,
freuen wir uns auf Ihre E-Mail.</b></h2></br>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<input type="hidden" name="sent" value=1>
<table border="0" cellpadding="5" cellspacing="0" bgcolor="#E0E0E0">
<tr>
<td align="left">Anrede*:</td>
<td>
<select name="anrede" size="1">
<option>Frau</option>
<option>Herr</option>
</select>
</td>
</tr
<tr>
<td align="left">Name*:</td>
<td><input type="text" name="name" id="name" value="<?php echo $_POST['name'];?>" size="30" maxlength="30"></td>
</tr>
<tr>
<td align="left">E-mail*:</td>
<td><input type="mail" name="mail" id="mail" value="<?php echo $_POST['mail'];?>" size="30" maxlength="30"></td>
</tr>
<tr>
<td align="left">Text*:</td>
<td><textarea rows=5 cols=45 name="text" id="text" </textarea></td>
</tr>
<td align="left">Formular:</td>
<td>
<input type=submit name="submit" value="E-mail senden">
<input type="reset" value=" Eintrag verwerfen">
</td>
</tr>
</table>
</form>
<?php
}
?>
Kommentar