13.1 Webform: Formulare erstellen und auswerten

Mit dem Modul Webform können Sie sehr komfortabel auch komplexe Formulare gestalten und die Ergebnisse auswerten. Das Modul liegt momentan in einer Beta-Version vor. Es funktioniert tadellos, bedarf aber noch der Feinarbeit im Quellcode.

13.1.1 Entpacken und installieren des Moduls

Laden Sie sich die Datei webform-6.x-2.0-beta6.tar.gz von der Projektwebsite2 oder der Buch-CD und entpacken Sie sie in den Ordner /sites/all/modules. Aktivieren Sie das Modul und setzen Sie die Benutzerberechtigungen. In den Benutzerberechtigungen geht es in erster Linie um die Auswertung der Formulareingaben. Das Formular an sich ist erreichbar, wenn die Gäste oder Benutzer das Recht haben, Inhalte zu sehen.

13.1.2 Konfiguration des Moduls

Im Bereich Verwalten – Einstellungen gibt es einen neuen Eintrag mit dem Namen Webform. Hier können Sie die Standardeinstellungen für alle Formulare festlegen (Abbildung 13.1):

Einstellungen - Webform
Abbildung 13.1: Einstellungen – Webform

Diese drei Bereiche möchte ich Ihnen im Folgenden kurz vorstellen:

Verfügbare Komponenten (Available components)

Ein Formular besteht aus verschiedenen Komponenten wie Textfeldern und Checkboxen. Hier können Sie aus einer beeindruckenden Anzahl von verfügbaren Komponenten auswählen, welche davon Sie benutzen wollen (Abbildung 13.2):

Verfügbare Formularkomponenten
Abbildung 13.2: Verfügbare Formularkomponenten

Standard E-Mail-Adresse

Jedes Formular benötigt einen Absender und einen Betreff. Der Absender besteht aus E-Mail-Adresse und Name, der Betreff standardmäßig aus einem Text und dem späteren Titel, der Überschrift, des Formulars, der hier als Variable [title] eingebunden wird (Abbildung 13.3):

Absenderangaben für Formulare
Abbildung 13.3: Absenderangaben für Formulare

Erweiterte Einstellungen

Hier können Sie zwei Einstellungen vornehmen, die unter Umständen sehr wichtig werden können (Abbildung 13.4):

Webform - Erweiterte Einstellungen
Abbildung 13.4: Webform – Erweiterte Einstellungen

Formulare werden oft von Spammern missbraucht, da sie im Normalfall auch Gästen zugänglich sind. Das Modul Webform nutzt intern verschiedene Methoden, um sicherer zu sein, dass es sich um einen Menschen handelt, der das Formular ausfüllt.

Zusätzlich können Sie durch Ankreuzen der Checkbox das Setzen eines Cookies im Browser des Formularbenutzers einschalten und dadurch evtl. Missbrauch besser verhindern. Wenn sich ein Cookie setzen lässt, hat es das Formular mit größerer Wahrscheinlichkeit mit einem Browser zu tun. Eine weitere Methode ist der Schutz durch einen Spamfilter und/oder ein Captcha (siehe Abschnitt 13.5 Kampf gegen Spam).

Eine weitere nützliche Einstellung ist der logging der abgeschickten Formulare über Drupals Berichtssystem (Webforms Debug). Wenn Sie in der Liste Log Submissions auswählen, wird jedes abgeschickte Formular im Berichtssystem erfasst. Das verhindert zwar keinen Spam, erzeugt aber bei jedem Abschicken eines Formulars eine Systemmeldung.

13.1.3 Erstellen Sie ein neues Formular

Wir wollen ein Formular für einen Autohändler erstellen, in dem ein Kunde einen Wunschtermin für eine Probefahrt mit einem Neuwagen vereinbaren kann. Das Formular soll die Felder Autotyp, Terminvorschlag, Name, E-Mail und Telefonnummer enthalten.

Wenn Sie auf den Link Inhalt erstellen klicken, sehen Sie einen neuen Inhaltstyp mit dem Namen Webform (Abbildung 13.5):

Webform erstellen
Abbildung 13.5: Webform erstellen

Die für das Formular relevanten Einstellungen befinden sich hinter den drei Links, die mit dem Wort Webform beginnen.

Webform Einstellungen

Titel: Der Titel des Formulars („Probefahrt vereinbaren“)

Beschreibung: Hier können Sie einen einleitenden Text angeben, der über den Formular- Feldern angezeigt wird.

Bestätigungsnachricht oder Weiterleitungs-URL: Hier können Sie entweder einen Text angeben, der angezeigt wird, nachdem das Formular abgeschickt worden ist, oder eine URL, zu der nach Abschicken des Formulars verzweigt werden soll.

Webform mail settings

An E-Mail-Adresse senden: Hier müssen Sie die E-Mail-Adresse angeben, an die die Formulardaten per E-Mail geschickt werden sollen.

In den Feldern E-Mail von Name, E-Mail von Adresse und Betreffzeile der E-Mail können Sie die Standardvorgaben, die Sie in den Einstellungen festgelegt haben, für dieses Formular überschreiben.

Im aufklappbaren Feld Conditional e-mail recipients können Sie, wenn in Ihrem Formular ein E-Mail-Feld vorkommt, an diese E-Mail-Adresse ebenfalls eine Bestätigung schicken.

Webform advanced settings

Show complete form in teaser: Wenn Sie diese Checkbox ankreuzen, wird sichergestellt, dass immer das ganze Formular angezeigt wird, auch in einer Liste mit Teaser-Ansicht (Abbildung 13.6).

Begrenzung: Sie können die maximalen Ausfüllvorgänge in einer bestimmten Zeit beeinflussen. Das ist vorteilhaft gegen Spammer, die Ihre Formulare benutzen, um Werbung abzusetzen. Eine Einstellung von maximal fünf Ausfüllvorgängen pro Stunde wird für das Probefahrt-Formular sicher reichen (Abbildung 13.6).

Submit button text: Hier können Sie eine individuelle Beschriftung für den Absende-Button eingeben (Abbildung 13.6).

Webform - erweiterte Einstellungen
Abbildung 13.6: Webform – erweiterte Einstellungen

In den Feldern Additional Validation und Additional Processing können Profis noch PHP-Code eingeben, der bei der Überprüfung des Formulars besondere Aufgaben ausführt, beispielsweise die Weitergabe der Variablen an eine andere Anwendung.

Nach einem Klick auf den Button speichern wird das Formular mit dem Status nicht veröffentlicht angelegt. Die Anzeige wechselt automatisch in das Formular zur Erstellung der Formularfelder.

Webform - Ansicht nach dem ersten Speichervorgang
Abbildung 13.7: Webform – Ansicht nach dem ersten Speichervorgang

13.1.4 Erstellen Sie Formularfelder

Jetzt können Sie die Formularkomponenten auswählen und durch einen Klick auf den Button hinzufügen dem Formular zuordnen.

Feld Autotyp:

Schön wäre eine Liste mit den für Probefahrten zur Verfügung stehenden Autotypen. Wählen Sie die Formularkomponente Select aus und klicken auf hinzufügen. Bei der Select-Komponente können Sie die gewünschten Auswahlen manuell festlegen.

Wählen Sie folgende Werte:

Bezeichnung: Autotyp

Feldschlüssel: autotyp

Standardwert: Dieses Feld können Sie leer lassen.

Optionen: Geben Sie hier pro Zeile einen Autotyp ein. Falls Sie den WYSIWYG-Editor aktiviert haben, klicken Sie vorher auf den Link switch to plain Editor (Abbildung 13.8).

Auswahlen für Autotyp
Abbildung 13.8: Auswahlen für Autotyp

Beschreibung: Die Beschreibung wird später unter dem Eingabefeld stehen und ist sehr hilfreich für den Benutzer.

Obligatorisch: Kreuzen Sie dieses Feld an, damit der Benutzer im Autotyp-Feld einen Wert angeben muss.

Feld Termin:

Der Kunde soll vorschlagen, an welchem Tag er eine Probefahrt unternehmen möchte. Wählen Sie in diesem Fall die Komponente Date. Füllen Sie die folgenden Felder aus:

Bezeichnung: Termin

Feldschlüssel: termin

Standardwert: today+1 (entspricht dem Wert „morgen“)

Zeitzone: Website Timezone (Die Zeitzone ist bei einem Kunden, der eine Probefahrt unternehmen will, vermutlich die gleiche wie die des Händlers.)

Obligatorisch: Kreuzen Sie die Checkbox an, damit der Benutzer einen Wert eingeben muss.

Feld Uhrzeit ab:

Der Kunde soll vorschlagen, um wie viel Uhr er die Probefahrt unternehmen möchte. Wählen Sie in diesem Fall die Komponente Time. Füllen Sie die folgenden Felder aus:

Bezeichnung: Uhrzeit ab

Feldschlüssel: uhrzeit_ab

Standardwert: 9:00 am – Ab Neun Uhr morgens (am) ist eine Probefahrt möglich.

Zeitzone: Website Timezone (Die Zeitzone ist bei einem Kunden, der eine Probefahrt unternehmen will, vermutlich die gleiche wie die des Händlers.)

Zeitformat: 24-hour

Obligatorisch: Kreuzen Sie die Checkbox an, damit der Benutzer einen Wert eingeben muss.

Feld Name und Telefonnummer:

Der Kunde soll seinen Namen und seine Telefonnummer eingeben. Das sind einfache Textfelder (Komponente textfield).

Feld E-Mail-Adresse:

Der Kunde soll seine E-Mail-Adresse angeben (Komponente email). An diese E-Mail, soll auch eine Kopie der Formularwerte geschickt werden.

Bezeichnung: E-Mail

Feldschlüssel: email

Standardwert: Kreuzen Sie die Checkbox Benutzer E-Mail ist Standardwert an. Falls der Kunde ein Benutzerkonto auf der Website hat und angemeldet ist, wird hier seine E-Mail-Adresse aus dem Benutzerkonto eingeblendet.

E-mail a submission copy: Kreuzen Sie die Checkbox an und schicken Sie dem Kunden eine Kopie der Formulareingaben per E-Mail.

Obligatorisch: Kreuzen Sie die Checkbox an, damit der Benutzer einen Wert eingeben muss.

Komponente Feld

Ein Feld ist ein zusammenklappbarer Bereich, der Formularfelder enthält. Legen Sie zwei Bereiche an, nennen Sie die Felder Probefahrt und persönliche Daten, kreuzen Sie die Checkbox Zusammenklappbar an und ordnen Sie nach dem Speichern in der Übersicht die anderen Felder zu (Abbildung 13.9).

Formularfelder
Abbildung 13.9: Formularfelder

Das Formular ist jetzt fertig. Falls Sie einen Menüeintrag erstellen wollen, können Sie das im Bearbeitungsmodus im Bereich Menüeinstellungen erledigen. In den Kommentareinstellungen können Sie die Kommentare deaktivieren.

Außerdem müssen Sie das Formular im Bereich Veröffentlichen „freischalten“ (Abbildung 13.10).

Veröffentlichen des Formulars
Abbildung 13.10: Veröffentlichen des Formulars

13.1.5 Füllen Sie Ihr Formular aus

Wenn Sie Ihr Formular im Anzeigemodus ansehen, sieht es schon sehr eindrucksvoll aus. Die Bereiche Probefahrt und persönliche Daten klappen bei einem Klick auf den Link auf und zu. Der Button hat die richtige Beschriftung (Abbildung 13.11).

fertiges Formular
Abbildung 13.11: fertiges Formular

Füllen Sie das Formular aus und schicken es ab. Je nach Ihrer Konfiguration erhalten Sie eine E-Mail (wenn Sie live im Internet arbeiten) wie in Abbildung 13.12. Den Text der E-Mail kann man über die Verwaltungsoberfläche leider nicht ändern.

Bestätigungs-E-Mail
Abbildung 13.12: Bestätigungs-E-Mail

13.1.6 Werten Sie die Eingabe aus

Wenn Sie im Formular auf den Reiter Ergebnisse klicken, haben Sie verschiedene Ansichten auf die Daten der ausgefüllten Formulare (Abbildung 13.13).

Tabellenauswertung des Formulars
Abbildung 13.13: Tabellenauswertung des Formulars

Durch einen Klick auf Herunterladen können Sie die Formulardaten im CSV-Format herunterladen und dann weiterbearbeiten (Abbildung 13.14).

Formulardaten in OpenOffice Calc
Abbildung 13.14: Formulardaten in OpenOffice Calc


Ihre Bewertung: Nichts Durchschnitt: 5 (eine Stimme)

habs gefunden *haha* select

habs gefunden *haha* select heißt nunmal bei mir auswählen, danke für deine seite hier!

Formularkomponente Select

Wenn ich in Optionen die Werte eintrage, in meinem Beispiel ist es Anrede und dazu Herr,Frau,Firma werden diese Daten in einer Zeile angezeigt, also nicht untereinander! Habe die Daten im Editor auch zeilenweise eingetragen. Verwende den FCK-Editor. Gibt es Hinweise? DANKE
Freundliche Grüße
Siegfried Schröter

Re. Formularkomponente Select

Hallo Siegfried,

das Problem hatte ich auch. Wichtig ist, das du bei den Optionseingaben im FCK-Editor, diesen in den normalen Texteditor umschaltest.
Unter dem Eingabe Feld für die Optionen steht "Zum einfachen Text Editor umschalten"

Falls du schon eingaben gemacht hattest, so steht dort in der Regel dann z.B.
"Geilenkirchen Heinsberg"

dies solltest du dann so ändern

Geilenkirchen
Heinsberg

Somit erscheint dann auch in der Auswahlliste alles untereinander.
Gruss
Stefan

hallo

wenn ich dies genau nach anleitung hier mache, komme ich an dieser stelle nicht klar wo man "selct" auswählen soll, bei mir steht da nicht select zum auswählen *seufz*

kannst du mir da nen tip geben wo mein fehler liegt?