Variablen innerhalb eines Formulares nutzen

Innerhalb von Formularen können Sie auch Variablen setzen, die Sie für die weitere Verarbeitung des Formulares verwenden können.

Sofern ein Element im Formular nicht existiert, kann es auch nicht angesprochen werden. Für solche Fälle bieten sich meist Variablen ein, die Sie für die weitere Verarbeitung des Formulares verwenden können.

Beispiel 1: Datum per Variable übergeben

Nachfolgend ein Beispiel, das auf Grundlage des Weblication® Standard-Formulares in der BASE eine Variable zum Setzen des Datums (mit Uhrzeit) nutzt. Vor der Erstellung des Formulares wird die Variable mit dem Wert des aktuellen Datums und Uhrzeit gesetzt (date). Auf diese Variable wird nach dem Absenden des Formulares zurückgegriffen, um den Zeitpunkt des Formularaufrufes der E-Mail mitgeben zu können ([!--date--]). Als Vergleichswert wird nach dem Absenden des Formulares ebenso der Zeitpunkt des Versandes festgehalten (dateSend) und auch der E-Mail mitgegeben ([!--dateSend--]).

Formulareditor: Box "E-Mail an den definierten Empfänger"

From: [!--email--]
To: [!--to--]
Content-Type: text/plain; charset=UTF-8
Subject: Anfrage vom Kontaktformular

[!--wFormData--]

Gesendet von: [!--wPageURL--]
Erstellt am: [!--date--]
Gesendet am: [!--dateSend--]

Formulareditor: Box "Vor der Erstellung auszuführendes Skript"

$date = date('d.m.Y')." ".date('H:i:s');
$this->setVar('date', $date);

Formulareditor: Box "Nach dem Absenden auszuführendes Skript"

...
$mailData["date"] = $this->getVar('date');
...
Formulareditor - Variablen nutzen
Formulareditor - Variablen nutzen

Beispiel 2: Zuletzt besuchte Projekt-Seite

Nachfolgend ein Beispiel, das auf Grundlage des Weblication® Standard-Formulares in der BASE eine Variable zum Setzen des zuletzt aufgerufenen URL nutzt. Vor der Erstellung des Formulares wird die Variable mit dem Wert des zuletzt aufgerufenen URL aus der Weblication® Session History gesetzt (sessionHistoryUrl). Auf diese Variable wird nach dem Absenden des Formulares zurückgegriffen, um die zuletzt aufgerufene Seite (letzte URL) als Pfad dem Formularaufruf der E-Mail mitgeben zu können ([!--sessionHistoryUrl--]).

Formulareditor: Box "E-Mail an den definierten Empfänger"

From: [!--email--]
To: [!--to--]
Content-Type: text/plain; charset=UTF-8
Subject: [!--subject--]

[!--wFormData--]

Gesendet von: [!--wPageURL--]
Zuletzt besuchte Seite: https://www.domain.dd[!--sessionHistoryUrl--]

Formulareditor: Box "Vor der Erstellung auszuführendes Skript"

// zuletzt aufgerufene URL aus Weblication Session per Variable setzen:
$sessionHistoryUrl= wSession::getHistoryUrl();
$this->setVar('sessionHistoryUrl', $sessionHistoryUrl);

Formulareditor: Box "Nach dem Absenden auszuführendes Skript"

...
$mailData["sessionHistoryUrl"] = $this->getVar('sessionHistoryUrl');
...
Formulareditor - Variablen nutzen (Session History Url)
Formulareditor - Variablen nutzen (Session History Url)

Dies können Sie grundsätzlich auch mit dem HTTP Referer ($_SERVER["HTTP_REFERER"]) umsetzen. Allerdings unterbinden mittlerweile viele Benutzer die Übergabe des Referer bzw. haben manche Browser dies aus Datenschutzgründen bereits im Standard deaktiv gesetzt.

Allgemeines

Auf gleiche Weise können Sie auch andere Daten über Variablen dem Formular mitgeben (z.B. die Betreffzeile, etc.).

Eine andere Möglichkeit zur Übergabe von nicht im Formular ersichtlichen Daten ist der Einsatz von versteckten Formularfeldern (hidden). Hierzu steht Ihnen im Formulareditor ein eigenes Element zum Einfügen in das Formular zur Verfügung ("Verstecktes Feld (hidden)").