Hallo!
Habe mir am Wochenende folgenden Formmailer erstellt:
http://www.mkschubert.de/addeire.html
http://www.mkschubert.de/addeire.php
Ich würde so gern zwei Textfelder ergänzen:
Deine Homepage
<p>Deine Homepage:</b><br /> <input type="text" name="Deine_Homepage" value="" size="60" /></p>
aber die Inhalte der Felder erscheinen nicht auf der E-Mail. Was muss ich bei addeire.php wie und wo ändern, damit ich die Inhalte per E-Mail erhalte?
Danke für eure Tipps!
Michael
<?php
# Adresse, an die die Formulardaten gesendet werden sollen:
$mailto = "michaels_reisetagebuch@yahoo.co.uk";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Formmailer</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<style type="text/css">
<!--
body { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; color: #000000; background: #ffff3; margin: 20px; padding: 0px; border: 0px; }
.caution { color: red; font-weight: bold; }
-->
</style>
</head>
<body>
<?php
if (isset($_POST["form_submitted"]))
{
// übergebene Variablen ermitteln:
$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$text = $_POST['text'];
// Überprüfungen der Daten:
unset($errors);
if ($email != "" and !preg_match("/^[^@]+@.+\.\D{2,5}$/", $email)) $errors[] = "die E-Mail-Adresse sieht nicht richtig aus";
if ($text == "") $errors[] = "es wurde kein Text eingegeben";
if (empty($errors))
{
if ($name != "") $mail_name=$name; else $mail_name="unbekannt";
if ($subject != "") $mail_subject = $subject; else $mail_subject = "kein Betreff";
if ($email != "") $mail_email = $email; else $mail_email = "email@unknown.xyz";
$ip = $_SERVER["REMOTE_ADDR"];
$text = stripslashes($text);
$header= "From: ".$mail_name." <".$mail_email.">\n";
$header .= "Reply-To: ".$mail_name." <".$mail_email.">\n";
$header .= "X-Mailer: PHP/" . phpversion(). "\n";
$header .= "X-Sender-IP: $ip\n";
$header .= "Content-Type: text/plain";
if (@mail($mailto, $mail_subject, $text, $header)) { $sent = true; } else { $errors[] = "keine Verbindung zum Mailserver - bitte nochmal versuchen"; }
// Kopie an Absender:
if (isset($sent) && isset($email) && $email != "" && isset($_POST['copy']))
{
$header= "From: ".$mailto."\n";
$header .= "X-Mailer: PHP/" . phpversion(). "\n";
$header .= "X-Sender-IP: $ip\n";
$header .= "Content-Type: text/plain";
@mail($email, $mail_subject, "Kopie der versendeten E-Mail:\n\n".$text, $header);
}
}
}
if (empty($sent))
{
if(isset($errors))
{
?><p class="caution">Fehler:</p><ul><?php foreach($errors as $f) { ?><li><?php echo $f; ?></li><?php } ?></ul><br /><?php
}
?><form method="post" action="<?php echo basename($_SERVER["PHP_SELF"]); ?>"><div>
<p><b>Name:</b><br /><input class="fs" type="text" name="name" value="<?php if (isset($name)) echo htmlentities(stripslashes($name)); else echo ""; ?>" size="35" /></p>
<p><b>E-Mail:</b><br /><input class="fs" type="text" name="email" value="<?php if (isset($email)) echo htmlentities(stripslashes($email)); else echo ""; ?>" size="35" /></p>
<p><b>Betreff:</b><br /><input class="fs" type="text" name="subject" value="<?php if (isset($subject)) echo htmlentities(stripslashes($subject)); else echo ""; ?>" size="35" /></p>
<b>Nachricht:</b><br /><textarea class="fs" name="text" cols="55" rows="12"><?php if (isset($text)) echo htmlentities(stripslashes($text)); else echo ""; ?></textarea><br />
<p><input type="submit" name="form_submitted" value="OK - Absenden" /> <input type="checkbox" name="copy" value="true" /> Kopie an Absender</p>
</div></form><?php
}
else
{
if (empty($email)) { ?><p><b>Danke!</b><br />Nachricht erfolgreich versendet. Allerdings wurde keine E-Mail-Adresse angegeben, ich kann also nicht antworten.</p><?php }
else { ?><p><b>Danke!</b><br />Nachricht erfolgreich versendet.</p><?php }
}
# wäre nett, wenn dieser Link bleiben würde:
?><p style="margin-top: 30px; font-size: 11px;">Script by <a class="sln" href="http://alex.ilosuna.org/">Alex</a> 2003</p>
</body>
Habe mir am Wochenende folgenden Formmailer erstellt:
http://www.mkschubert.de/addeire.html
http://www.mkschubert.de/addeire.php
Ich würde so gern zwei Textfelder ergänzen:
Deine Homepage
<p>Deine Homepage:</b><br /> <input type="text" name="Deine_Homepage" value="" size="60" /></p>
aber die Inhalte der Felder erscheinen nicht auf der E-Mail. Was muss ich bei addeire.php wie und wo ändern, damit ich die Inhalte per E-Mail erhalte?
Danke für eure Tipps!
Michael
<?php
# Adresse, an die die Formulardaten gesendet werden sollen:
$mailto = "michaels_reisetagebuch@yahoo.co.uk";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Formmailer</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<style type="text/css">
<!--
body { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; color: #000000; background: #ffff3; margin: 20px; padding: 0px; border: 0px; }
.caution { color: red; font-weight: bold; }
-->
</style>
</head>
<body>
<?php
if (isset($_POST["form_submitted"]))
{
// übergebene Variablen ermitteln:
$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$text = $_POST['text'];
// Überprüfungen der Daten:
unset($errors);
if ($email != "" and !preg_match("/^[^@]+@.+\.\D{2,5}$/", $email)) $errors[] = "die E-Mail-Adresse sieht nicht richtig aus";
if ($text == "") $errors[] = "es wurde kein Text eingegeben";
if (empty($errors))
{
if ($name != "") $mail_name=$name; else $mail_name="unbekannt";
if ($subject != "") $mail_subject = $subject; else $mail_subject = "kein Betreff";
if ($email != "") $mail_email = $email; else $mail_email = "email@unknown.xyz";
$ip = $_SERVER["REMOTE_ADDR"];
$text = stripslashes($text);
$header= "From: ".$mail_name." <".$mail_email.">\n";
$header .= "Reply-To: ".$mail_name." <".$mail_email.">\n";
$header .= "X-Mailer: PHP/" . phpversion(). "\n";
$header .= "X-Sender-IP: $ip\n";
$header .= "Content-Type: text/plain";
if (@mail($mailto, $mail_subject, $text, $header)) { $sent = true; } else { $errors[] = "keine Verbindung zum Mailserver - bitte nochmal versuchen"; }
// Kopie an Absender:
if (isset($sent) && isset($email) && $email != "" && isset($_POST['copy']))
{
$header= "From: ".$mailto."\n";
$header .= "X-Mailer: PHP/" . phpversion(). "\n";
$header .= "X-Sender-IP: $ip\n";
$header .= "Content-Type: text/plain";
@mail($email, $mail_subject, "Kopie der versendeten E-Mail:\n\n".$text, $header);
}
}
}
if (empty($sent))
{
if(isset($errors))
{
?><p class="caution">Fehler:</p><ul><?php foreach($errors as $f) { ?><li><?php echo $f; ?></li><?php } ?></ul><br /><?php
}
?><form method="post" action="<?php echo basename($_SERVER["PHP_SELF"]); ?>"><div>
<p><b>Name:</b><br /><input class="fs" type="text" name="name" value="<?php if (isset($name)) echo htmlentities(stripslashes($name)); else echo ""; ?>" size="35" /></p>
<p><b>E-Mail:</b><br /><input class="fs" type="text" name="email" value="<?php if (isset($email)) echo htmlentities(stripslashes($email)); else echo ""; ?>" size="35" /></p>
<p><b>Betreff:</b><br /><input class="fs" type="text" name="subject" value="<?php if (isset($subject)) echo htmlentities(stripslashes($subject)); else echo ""; ?>" size="35" /></p>
<b>Nachricht:</b><br /><textarea class="fs" name="text" cols="55" rows="12"><?php if (isset($text)) echo htmlentities(stripslashes($text)); else echo ""; ?></textarea><br />
<p><input type="submit" name="form_submitted" value="OK - Absenden" /> <input type="checkbox" name="copy" value="true" /> Kopie an Absender</p>
</div></form><?php
}
else
{
if (empty($email)) { ?><p><b>Danke!</b><br />Nachricht erfolgreich versendet. Allerdings wurde keine E-Mail-Adresse angegeben, ich kann also nicht antworten.</p><?php }
else { ?><p><b>Danke!</b><br />Nachricht erfolgreich versendet.</p><?php }
}
# wäre nett, wenn dieser Link bleiben würde:
?><p style="margin-top: 30px; font-size: 11px;">Script by <a class="sln" href="http://alex.ilosuna.org/">Alex</a> 2003</p>
</body>
Kommentar