Erläuterungen zur Nutzung des Form-Mailer

Der Form-Mailer ist ein CGI-Script und läuft zentral auf unserem Server. Er ermöglicht Eingaben deiner Besucher in Formulare auf deinen Internet-Seiten in eine E-Mail umzuwandeln. Das Script kann an individuellen Bedürfnisse angepasst werden.
Baue beispielsweise den folgenden HTML-Code an die Stelle in Ihre Seite ein, an welcher die Eingabefelder erscheinen sollen:

<form action="/system-cgi/formmail.pl" method="POST">
<input type=hidden name="recipient" value="E@MAIL">
<input type=text name="realname" size="20"value="Name">
<input type=text name="email" size="20" value="Email">
<input type=text name="subject" size="20" value="Subjekt">
<textarea rows="2" name="message" cols="20"></textarea>
<input type="submit" value="Absenden" name="Submit">
</form>

Dabei steht "E@MAIL" für die Emailadresse, an die Anfragen gesendet werden sollen. Aus Gründen der Spamvermeidung müssen wir diese Adresse in ein zentrales Script einfügen. Bitte sende uns diese Adresse per Mail zu, damit wir diese eintragen können. Ansonsten kann der Formmailer aus Sicherheitsgründen nicht funktionieren.

Verborgene Felder anlegen

Du musst einige sogenannte "versteckte" bzw. "verborgene" Felder (in HTML: INPUT type=hidden) anlegen. Mit diesen steuerst du den Form-Mailer. Du sagst ihm zum Beispiel, an welche E-Mail Adresse das Formular übertragen werden soll. Folgende verborgene Felder musst du anlegen:

Ein Feld mit dem Namen "recipient" und dem Wert "E-Mail Adresse, an welches die Formulareingabe abgesandt werden soll". In HTML sieht dies so aus:
<INPUT type=hidden name="recipient" value="E@MAIL">
Ein Feld mit dem Namen "subject" und dem Wert "Titel, den die E-Mail bekommen soll". In HTML sieht dies zum Beispiel so aus:
<INPUT type=hidden name="subject" value="Veranstaltung">
Lade das Formular auf unseren Server hoch. Rufe es anschließend im Browser auf und probiere die Eingabe aus. Rufee dann mit deinem E-Mail Programm die neue Post des angegebenen Empfänger-Postfachs ab. Nach kürzester Zeit solltst du dort eine E-Mail mit den Formulareingaben vorfinden.

Zusatzfunktionen des Form-Mailer

Hat dies problemlos funktioniert, kannst du umfangreichere Formulare entwickeln. Der Form-Mailer erlaubt einige interessante Zusatzfunktionen, die du über verborgene Felder aufrufen kannst:

Sonderfelder "email", "realname" und "subject"

Die Formularfelder "email", "realname" und "subject" haben eine Sonderrolle: Was der Besucher dort einträgt, wird als Absenderadresse, Absendername und Thema der E-Mail verwendet, die an dich abgeschickt wird. Du kannst alle drei als verborgene Felder einbauen und mit Standardwerten versehen, z.B. wie im vorangegangenen Testformular das "Subject" mit "Veranstaltung" oder "Tagung" angeben. Je nach Formular und vor allem für "email" bietet sich jedoch an, den Wert von demjenigen, der das Formular ausfüllt, selbst eintragen zu lassen. Beim "email"-Feld hat dies den Vorteil, dass du dann eine E-Mail erhälst, auf das du direkt mit der Antwort-Funktion deines E-Mail Programms antworten kannst und der Adressat kann direkt richtig übernommen werden.
Die Eingaben des Benutzers werden standardmäßig bei diesen beiden Feldern nur als Absender und Themenzeile im Kopf (Header) der an Sie versendeten E-Mail eingetragen und nicht mehr innerhalb der E-Mail als Formulareingabe erneut aufgeführt. Mit dem verborgenen Formularfeld "print_config" verhinderst du dies und gibst die Eintragungen auch noch einmal mit den anderen Formularinhalten im Body der E-Mail wieder. Der HTML-Code für das Feld muss folgendermaßen aussehen:
<INPUT type=hidden name="print_config" value="email,subject,realname">. . 

Sortierung der Formulareingaben

Lege ein verborgenes Feld mit dem Namen "sort" an. Dieses bewirkt, dass die Eingaben des Formulars in einer bestimmten Reihenfolge ausgegeben werden. Zur Auswahl stehen entweder alphabetisch oder eine von dir festgelegte Reihenfolge.
Bei einer alphabetischen Sortierung werden die Felder in der E-Mail je nach Anfangsbuchstaben ausgegeben. Wenn Sie zum Beispiel die Felder "Name", "Strasse", "Ort" verwendet haben, wird dir der Mail-Manager bei einer alphabetischen Sortierung die Eingaben in der Reihenfolge "Name","Ort","Strasse" ausgeben. Eine alphabetische Reihenfolge ist dann zu empfehlen, wenn in deinem Formular Felder verwendet werden, deren alphabetische Abfolge Sinn macht, zum Beispiel wenn du Bestellnummern als Feldnamen verwendest.
Wünscht du eine alphabetische Sortierung, geben für das Feld "sort" den Wert "alphabetic" an. In HTML sieht dies so aus:
<INPUT type=hidden name="sort" value="alphabetic">
Alternativ kannst du auch eine eigene Reihenfolge festlegen. Dies ist sinnvoll, wenn Sie z.B. für ein Kontaktformular Feldnamen verwenden, die nicht in alphabetischer Abfolge stehen. Gebe für diese Sortiermöglichkeit als Wert:
order:Feldname1,Feldname2,Feldname3 an. In HTML sieht dies zum Beispiel so aus:
<INPUT type=hidden name="sort"
value="order:Feldname1
,Feldname2,Feldname3">
Ein konkretes Beispiel für ein Kontaktformular könnte so aussehen:
<INPUT type=hidden name="sort"
value="order:vorname,nachname,
strasse,hausnummer,plz,ort,
telefon,fax,email,nachricht">

Eigene Antwortseiten verwenden

Gefällt dir die Standard-Bestätigungsseite nicht, die vom Form-Mailer angezeigt wird, kanst du über ein verborgenes Feld mit dem Namen "redirect" eine beliebige Internet-Seite angeben, die dem Betrachter nach erfolgreichem Ausfüllen und Absenden des Formulars gezeigt wird. Als Wert bzw. Value des Feldes gebe die URL der selbstgestalteten Bestätigungsseite an. Der HTML-Code für das Feld sieht zum Beispiel folgendermaßen aus:
<INPUT type=hidden name="redirect"
value="http://www.domainname.de/Hinweis.html">
Feld: redirect
Beschreibung: Wenn du möchtest, dass Absender des Formulars nicht zur standardmäßig vorgegebenen Antwortseite, sondern zu einer eigenen Antwortseite weitergeleitet werden sollen, so kannst dies über das Feld "redirect" festlegen.
Syntax: <input type="hidden" name="redirect" value="http://ihre-domain/ihre-antwortseite.html">

Felder zwangsweise ausfüllen lassen

Mit dem verborgenen Feld "required" kannst du erreichen, dass bestimmte Felder ausgefüllt werden müssen, sonst kann das Formular nicht abgeschickt werden. Diese Möglichkeit ist vor allem bei Bestellformularen sehr sinnvoll. Achte jedoch darauf, nur solche Felder zwingend zu machen, bei denen es realistisch ist, das der Ausfüller eine sinnvolle Angabe machen kann. Bei einer Adressabfrage ist es zum Beispiel oft nicht sinnvoll, die Fax-Nummer als "required" festzulegen, da der Besteller ggf. kein Fax hat. Der HTML-Code für das verborgene "required"-Feld sieht zum Beispiel folgendermaßen aus:
<INPUT type=hidden name="required"
value="name,strasse,ort">
Als Wert bzw. Value gib dabei die Namen der Felder an, die zwingend ausgefüllt werden sollen.
Feld: missing_fields_redirect
Beschreibung: Dieses Formularfeld ermöglicht die Angabe einer Fehlerseite, welche angezeigt wird, falls nicht alle benötigten Felder des Formulars ausgefüllt wurden. Du kannst so die automatisch vom Skript erstellte Fehlerseite durch eine eigene ersetzen.
Syntax: <input type="hidden" name="missing_fields_redirect" value="http://www.ihre-domain/ihre-fehlerseite.html">

Spamschutz über Captchas

Um die Seite "Spam Protection" und damit Captchas für das Kontaktformular zu aktivieren, ersetze im Quelltext des Formulars bei <form action="/system-cgi/formmail.pl" method="POST"> "formmail.pl" durch "formmailc.pl".Um Captchas zu aktivieren, muss diese Formular-Zeile dann also folgendermaßen lauten:
Syntax:<form action="/system-cgi/formmail.pl" method="POST">
Die Spamschutzseite kann außerdem noch konfiguriert werden:
Feld: captcha_title
Beschreibung: Über das Feld "captcha_title" können Sie einen individuellen Titel für die Spamschutz-Seite hinterlegen. Wenn das Feld nicht vorhanden ist, wird die Standardüberschrift angezeigt.
Syntax: <input type="hidden" name="captcha_title" value="Ihre Überschrift">
Feld: captcha_text
Beschreibung: Über das Feld "captcha_text" können Sie für den Text, der auf der Spamschutz-Seite oberhalb des Captchas angezeigt wird, einen individuellen Text hinterlegen. Ist das Feld nicht vorhanden, wird der Standardtext angezeigt.
Syntax: <input type="hidden" name="captcha_text" value="Ihr Text">

Auch leere Felder übertragen

Der Mail-Manager überträgt standardmäßig keine Felder, in die keine Eingabe erfolgt ist. Wenn du dies dennoch wünscht, musst du ein verborgenes Feld mit dem Namen "print_blank_fields" in Ihr Formular einbauen. In HTML sieht dies dann so aus:
<INPUT type=hidden
name="print_blank_fields" value="1">


 
 
 

© 2017 jugendnetz-berlin.de – Alle Rechte vorbehalten