Versenden von Formulardaten per E-Mail

Dieser Artikel gilt nur für 1&1 WebHosting 5.0.
Das Versenden von Formulardaten per E-Mail ist mit folgendem kleinen PHP-Skript möglich:
formmail.php
<?php
$recipient = "ihre-adresse@domain.de";
$fmtResponse= implode("", file("response.htt"));
$fmtMail= implode("", file("mail.htt"));
foreach($_POST as $key=> $val) {
$fmtResponse= str_replace("<$key>", $val, $fmtResponse);
$fmtMail= str_replace("<$key>", $val, $fmtMail);
}
if ($_POST["access"] == "irregeheim") {
mail($recipient, $_POST["subject"], $fmtMail);
}
echo $fmtResponse;
?>
Wie Sie sehen, wird in den ersten beiden Zeilen auf zwei Dateien zugegriffen. Diese Dateien dienen der Konfiguration der Ausgabe ("Danke-Seite") und der E-Mail, welche verschickt werden soll.
Damit das Script nicht ohne eine kleine Nachforschung zum "Spammen" missbraucht werden kann, gibt es das zusätzliche versteckte Formularfeld mit Namen "access". Bevor nun die E-Mail versandt wird, wird geprüft, ob dieser Wert richtig übergeben wurde.
In der while-Schleife werden alle Vorkommen von Formularfeldnamen durch die übergebenen Werte ersetzt. Als Beispiel enthält das Formular folgenden Code:
Formular
[...]
<form action="formmail.php" method="POST">
<input type="hidden" name="subject" value="Kontaktformular">
<input type="hidden" name="access" value="irregeheim">
<textarea name="Eingabe" cols="60" rows="20" wrap="PHYSICAL" id="Eingabe"></textarea>
<input type="submit" value="Abschicken">
</form>
[...]
In der Datei response.htt könnte nun folgendes stehen:
response.htt
<h1>Danke!</h1>
Ihre Eingabe <Eingabe> wurde an <recipient> verschickt.
In der Datei mail.htt legen Sie das Format für die E-Mail fest, als Beispiel:
mail.htt
Hallo, aus dem Kontaktformular kam folgende Eingabe:
<Eingabe>
Gäbe jemand nun in das Eingabefeld den Text "Hallo" ein, würde eine E-Mail mit dem Betreff "Kontaktformular" und dem Inhalt ...
Hallo, aus dem Kontaktformular kam folgende Eingabe:
Hallo
... an ihre-adresse@domain.de verschickt. Natürlich müssen Sie die Adresse hinter
auf Ihre Adresse ändern, damit Sie die E-Mails auch tatsächlich erhalten.
Zur Installation des Scripts auf Ihrer Präsenz (ab dem Paket 1&1 Home 5.0, möglich) erstellen Sie die Dateien
,
und
. In die Datei
fügen Sie das oben angezeigte Script ein. Dieses Script können Sie verändern, anpassen und ergänzen, wie Sie möchten.
Die drei Dateien kopieren Sie in das selbe Verzeichnis, in dem auch die Seite mit dem Formular liegt. Achten Sie darauf, dass in der Form-Zeile in der Action
und als Methode "POST" eingetragen ist.