11.9 Beispiel Formular: Ändern eines Profils
In diesem Abschnitt entstehen zwei Formulare, die beim Aufruf die aktuellen Benutzerdaten in der Profildatenbank anzeigen und Änderungen übernehmen.
-
Klickt ein Empfänger auf den im Mailing vorhandenen Link Daten ändern, bekommt er im ersten Formular direkt die Daten angezeigt, die aktuell in der Datenbank vorhanden sind. Nachdem der Empfänger seine Daten angepasst hat und dies mit Speichern übernimmt, wird er an das zweite Formular weitergeleitet.
-
Das zweite Formular bestätigt dem Empfänger, dass die Änderung erfolgreich war und zeitgleich werden im Hintergrund die Daten im OpenEMM aktualisiert.
11.9.1 Benötigte Trigger anlegen
Als erste Aufgabe erzeugen Sie zwei Trigger. Der erste lädt die vorhandenen Empfängerdaten in die Formularfelder. Der zweite sichert nach dem Absenden des ersten Formulars die geänderten Daten in der Datenbank des OpenEMM.
-
Rufen Sie in der Rubrik Trigger-Verwaltung Neu auf.
-
Tragen Sie bei Name eine sprechende Bezeichnung ein, etwa Empfänger laden. Das ist wichtig, damit Sie später den Trigger in den Auswahllisten des OpenEMM schnell finden. Dasselbe gilt für das Eingabefeld Beschreibung.
-
Bei Verwendung geben Sie Nur für Formulare an. Damit bestimmen Sie, dass der OpenEMM den Trigger nur in Verbindung mit Formularen anzeigt, nicht aber bei messbaren Links. Das erleichtert die Definition neuer Formulare und Mailings.
-
Die Auswahlliste Typ legt fest, was der Trigger tun soll. Wählen Sie den Eintrag Empfängerdaten laden und klicken Sie auf Hinzufügen. Dieser Trigger bewirkt, dass das System beim Aufruf des Formulars die Daten des betroffenen Benutzers lädt. Es sind keine weiteren Eingaben erforderlich. Hinweis: Damit der Trigger weiß, um welchen Empfänger es sich handelt, muss der Formularaufruf später mit der agnUID erfolgen. Die Information, welche Daten dargestellt werden sollen, findet der Trigger im Formular. Hier werden die Formularfelder mit der Empfängerdatenbank referenziert.
-
Nachdem Sie den Schritt hinzugefügt haben, wird Ihnen eine Checkbox Auch inaktive Abonnenten-Daten laden angezeigt. Mit dieser Einstellung können auch Empfänger, die sich zwischenzeitlich abgemeldet haben oder gebounced sind, ihre Daten ansehen und gegebenenfalls anpassen.
- Mit der Schaltfläche Speichern sichern Sie den neuen Trigger, achten Sie darauf, dass der Status aktiv ist.
Sie könnten nun über die Auswahlliste Typ und die Schaltfläche Hinzufügen weitere Schritte in den Trigger einfügen. Für das Beispiel genügt aber der bereits definierte Schritt zum Laden des Profils.
-
Für den zweiten Trigger legen Sie wieder - wie oben beschrieben - einen Trigger an, den Sie Empfänger speichern nennen. Der exakte Name spielt keine Rolle, er muss nur eindeutig sein. Bei Verwendung stellen Sie wieder auf nur für Formulare ein.
-
In der Auswahlliste Typ wählen Sie die Option Empfänger hinzufügen / aktualisieren. Bestätigen Sie Ihre Auswahl mit Hinzufügen.
-
Sobald der Schritt hinzugefügt wurde, bietet der OpenEMM zusätzliche Optionen an: Die Option Dubletten Abgleich spielt beim Speichern eines bereits vorhandenen Profils nur dann eine Rolle, wenn der Empfänger seine E-Mail-Adresse ändert. Dann prüft der OpenEMM, ob diese Adresse schon vorhanden ist. Bleibt die E-Mail-Adresse unverändert, so findet keine Prüfung statt. Lassen Sie diese Option deshalb eingeschaltet. Bei aktiviertem Schieberegler müssen Sie noch die Schlüsselspalte für Dubletten-Erkennung und Aktualisierungen auswählen. In der Regel wird hier email als Abgleichkriterium verwendet. Die Option Double-Opt-In verwenden ist in diesem Fall nicht notwendig, da es sich ja um bereits angemeldete Empfänger handelt.Hinweis: Sie haben die Möglichkeit, einen erneuten Double-Opt-in-Versand ausführen zulassen, wenn ein bestehender Empfänger seine E-Mail-Adresse überschreibt. Da Sie aber vermutlich nicht jede Namensänderung mit einer DOI-Mail quittieren möchten, ist hierfür die Erweiterung von Anmeldeformularen / Profiländerungsformularen erforderlich. Sollten Sie hierzu Fragen haben, wenden Sie sich bitte an unseren Support.
- Sichern Sie den neuen Trigger nun mit Speichern.
Jetzt finden Sie in der Trigger-Verwaltung zwei Einträge mit den Namen Empfänger laden und Empfänger speichern (falls Sie nicht andere Namen verwendet haben).
11.9.2 Formular zum Profil anlegen
Die Vorbereitungen sind abgeschlossen, wechseln Sie nun in die Rubrik Seiten & Formulare und klicken auf Neu. Zunächst erstellen Sie das Formular, das die vorhandenen Empfängerdaten anzeigen soll.
-
Geben Sie dem Formular einen aussagekräftigen Namen. Dieser Name wird später auch in den Link zum Aufruf des Formulars eingefügt. Deshalb ist die Verwendung von Leerzeichen, Umlauten und Sonderzeichen nicht möglich. Das kann je nach Web-Browser und E-Mail-Programm beim Empfänger für Probleme sorgen. Groß- und Kleinschreibung sind dagegen kein Problem. Im Beispiel tragen Sie als Name Profilverwaltung ein. Bei der Beschreibung erklären Sie mit einem Satz den Zweck des Formulars.
-
In der Auswahlliste Einleitender Trigger wählen Sie den zuvor erstellten Trigger Empfänger laden aus.Achtung: Es sind nur solche Trigger sichtbar, die bei Verwendung die Auswahl nur für Formulare oder Link und Formular (siehe Kapitel Aktion erstellen oder bearbeiten) sowie den Status aktiv haben.
-
Im Eingabefeld Erfolgs-Formular tragen Sie den HTML-Code zur Gestaltung des Formulars sowie der anzuzeigenden Felder ein. Ein stark vereinfachtes Beispiel für die Anzeige von Anrede, Vorname, Nachname und E-Mail-Adresse finden Sie weiter unten.
-
Ein abschließender Trigger ist für das Beispiel nicht erforderlich. Lassen Sie die Auswahlliste Abschließender Trigger im Erfolgs-Formular also auf Keine Aktion stehen.
-
In das Eingabefeld Fehler-Formular gehört der Text, den das System anzeigt, wenn der Empfänger z.B. nicht gefunden wurde oder die agnUID gefehlt hat. Sie haben hier ebenfalls alle HTML-Kommandos zur Verfügung. Für das Beispiel soll aber einfach der Text Es ist ein Fehler aufgetreten genügen.
-
Schließen Sie die Eingabe mit der Schaltfläche Speichern ab und setzen Sie den Status auf aktiv.
Nach dem Speichern zeigt Ihnen das System unter dem Namen die URL zum Aufruf des Formulars, den Sie in Ihren Mailings nun verwenden können. Wie Sie dafür vorgehen, lesen Sie in Kapitel Formulare in Mailings einfügen.
Hinweis:** ** Aufgrund der Verwendung eines Velocity-Codes ist die Darstellung im WYSIWYG-Editor in diesem Beispiel nicht möglich.
Das abgebildete Beispiel zeigt ohne große Formatierung den Inhalt der Felder GENDER, FIRSTNAME, LASTNAME und EMAIL an. Außerdem gibt es je eine Schaltfläche für Speichern und Abbrechen.
Der komplette HTML-Code sieht so aus:
<form name="send" action="form.action" method="post">
<input type="hidden" name="agnCTOKEN" value="xxxxxx">
<input type="hidden" name="agnFN" value="Datenspeichern">
<input type="hidden" name="agnUID" value="$!agnUID">
Anrede: <select name="GENDER" style="width: 100%; padding: 5px;">
<option value="2" #if($!customerData.GENDER == "2") selected#end>keine Angabe</option>
<option value="1" #if($!customerData.GENDER == "1") selected#end>Frau</option>
<option value="0" #if($!customerData.GENDER == "0") selected#end>Herr</option>
</select>
Vorname: <input type="text" name="FIRSTNAME" value="$!customerData.FIRSTNAME" style="width: 100%; padding: 5px;"><br />
Nachname: <input type="text" name="LASTNAME" value="$!customerData.LASTNAME" style="width: 100%; padding: 5px;"><br />
E-Mail: <input type="text" name="EMAIL" value="$!customerData.EMAIL" style="width: 100%; padding: 5px;">
<input type="submit" value="Speichern" class="button" style="margin-right:20px; margin-top:20px;">
<input type="reset" value="Abbrechen" class="button" style="margin-right:20px; margin-top:20px;" onclick="self.location.href='https://www.yourdomain.de'">
</form>
Bitte beachten Sie: Sollten Sie ein Datums-Feld einbinden, muss dieses in drei einzelne Eingabefelder für Tag, Monat und Jahr aufgeteilt werden. Die Feldnamen lauten dabei immer nach dem Schema: FELDNAME_DAY_DATE, FELDNAME_MONTH_DATE, FELDNAME_YEAR_DATE.
Beispiel für ein Datumsfeld birthday:
Geburtstag: <input type="text" name="birthday_DAY_DATE" value="$!customerData.birthday_DAY_DATE" />.<input type="text" name="birthday_MONTH_DATE" value="$!customerData.birthday_MONTH_DATE" />.<input type="text" name="birthday_YEAR_DATE" value="$!customerData.birthday_YEAR_DATE" />
Hinweis: Die EU-DSGVO fordert, dass der Empfänger jederzeit die Möglichkeit haben muss, dem Tracking widersprechen zu können. Wenn Sie in der Profilverwaltung auch den aktuellen Tracking-Status sowie eine Änderungsmöglichkeit dafür anbieten möchten, können Sie folgende Zeilen in die Profilverwaltung aufnehmen:
Newsletter Tracking: <select name="sys_tracking_veto" style="width: 100%; padding: 5px;">
<option value="0" #if($!customerData.sys_tracking_veto == "0") selected#end>aktiv</option>
<option value="1" #if($!customerData.sys_tracking_veto == "1") selected#end>deaktiviert</option>
Erläuterungen zum Code:
Es handelt sich dabei um ein HTML-Formular, die Tags sind deshalb von eingeschlossen. Im einleitenden Tag regelt das Attribut action, welches Skript das Formular beim Abschicken mit der Submit-Schaltfläche auswertet. Hier tragen Sie immer form.action ein und zusätzlich als Übertragungsmethode method="post".
Die folgenden drei Zeilen definieren versteckte Formularfelder. Diese erscheinen nicht im Web-Browser, die Daten werden aber bei der Auswertung des Formulars mit übermittelt. Der OpenEMM benötigt sie, um die Änderungen dem richtigen Empfänger in der Empfängerdaten zuzuordnen. Die versteckten Felder haben folgende Bedeutung:
-
: Das Feld mit dem Namen agnCTOKEN übermittelt dem OpenEMM verschlüsselt Ihre Kundennummer (Company ID). Das Attribut value bestimmt den Wert, im Beispiel xxxxxx. Wichtig: Geben Sie hier das CTOKEN aus Ihrem Mandanten an, nur so kann der Datensatz in der Datenbank Ihrem Unternehmen zugeordnet werden. Ihr CTOKEN finden Sie in jedem Formular in der URL.
-
: Das Feld agnFN teilt dem System mit, welches Formular nach dem Absenden mit der Submit-Schaltfläche aufzurufen ist. Dieses nachgeordnete Formular speichert dann die geänderten Empfängerdaten in der Profildatenbank. Im Beispiel ist bei value der Name Datenspeichern angeführt. Dieses Formular erzeugen Sie im nächsten Schritt.
-
: Um einen bestimmten Empfänger zu identifizieren, erzeugt der OpenEMM eine eindeutige ID (User-ID). Diese User-ID wird von dem einleitenden Trigger zum Laden der Daten benötigt und mit dem Wert $agnUID hinterlegt. Sie müssen nur diese Variable bei value eintragen. Der OpenEMM ersetzt diese Variable beim Aufruf des Formulars mit der tatsächlichen User-ID.
Die folgenden drei Zeilen geben im Beispiel die Daten aus dem geladenen Empfängerprofil in den entsprechenden Formularfeldern aus. Welche Profilfelder Sie im Formular anzeigen wollen, ist ganz Ihre Entscheidung. Der Aufbau des -Tags ist immer gleich. Sie dürfen natürlich auch zusätzliche HTML-Tags einfügen, die Eingabefelder und Beschriftung sauber ausrichten, etwa mit einer Tabelle. Im Beispiel haben wir der Übersichtlichkeit halber darauf verzichtet. Die folgende Zeile erzeugt ein Feld für den Vornamen des Empfängers:
Entscheidend sind dabei zwei Attribute:
-
Das Attribut value enthält den Vorgabewert, den der Browser beim ersten Anzeigen des Formulars in das Eingabefeld einträgt. Hier soll natürlich der aktuelle Inhalt des Empfängerprofils stehen. Über den Skriptbefehl $customerData haben Sie Zugriff auf sämtliche Bestandteile des Profils, das Sie mit dem einleitenden Trigger geladen haben. An den Befehl hängen Sie durch einen Punkt getrennt den Namen des Feldes in der Profildatenbank an. Es stehen Ihnen alle Felder des Profils zur Verfügung. Im Beispiel wird der Vorname aus dem Profilfeld FIRSTNAME abgerufen.
-
Damit der OpenEMM eine Verbindung zwischen dem Formularfeld und dem Profilfeld herstellen kann, tragen Sie bei name ebenfalls den Feldnamen aus der Datenbank ein. Im Beispiel ist das wieder FIRSTNAME.
Am Ende der HTML-Tags definieren Sie die Schaltfläche, mit der ein Empfänger geänderte Daten an den OpenEMM übergeben kann. Dabei handelt es sich um die bei HTML übliche Submit-Schaltfläche. Das Attribut value bestimmt die Beschriftung der Schaltfläche, im Beispiel Speichern:
Und damit der Empfänger das Profil auch ohne Änderung verlassen kann, bieten Sie ihm alternativ noch eine Möglichkeit, abzubrechen. Im Attribut onclick können Sie noch definieren, welche Seite danach geladen werden soll.
11.9.3 Formular zum Speichern anlegen
Bestätigt ein Empfänger das Formular aus dem letzten Abschnitt mit der Schaltfläche Speichern, so wertet der OpenEMM die Daten aus den Eingabefeldern aus. Dabei erfasst das System sowohl die sichtbaren, als auch die unsichtbaren Felder. Die eingelesenen Daten sollen in der Empfängerdatenbank gespeichert werden. Diese Aufgabe übernimmt ein zweites Formular. Der Name dieses Formulars ist bereits im ersten Formular festgelegt:
Legen Sie entsprechend ein neues Formular mit dem Namen Datenspeichern an:
-
Klicken Sie in der Navigationsleiste unter Seiten & Formulare auf Neues Formular. Tragen Sie im Eingabefeld Name Datenspeichern ein (oder den Namen, den Sie im HTML-Code des ersten Formulars gewählt haben). Bei Beschreibung geben Sie kurz an, dass dieses Formular die Daten des Formulars Profilverwaltung übernimmt. Das erleichtert bei vielen Formularen die Zuordnung.
-
Die Auswahlliste Einleitender Trigger stellen Sie auf Empfänger speichern ein. Diesen Trigger haben Sie vorher in Kapitel Benötigte Aktionen anlegen definiert.
-
Das Eingabefeld Erfolgs-Formular wird in diesem Beispiel nicht benutzt. Stattdessen soll der OpenEMM auf eine Bestätigungsseite Ihrer Website weiterleiten, damit der Empfänger auf Ihr restliches Angebot zugreifen kann. Hierzu markieren Sie den Punkt Erfolgs URL und hinterlegen den Link zur Landingpage.
-
Ein Abschließender Trigger wird nicht benötigt.
-
Das Eingabefeld Fehler-Formular nimmt im Beispiel nur einen kurzen Text auf. In der Praxis sollten Sie hier zumindest eine E-Mail-Adresse oder eine Telefonnummer für Anfragen Ihrer Kunden angeben oder ebenfalls eine Landingpage auf Ihrer Website ansteuern.
-
Nach dem Speichern setzen Sie den Status auf aktiv, falls noch nicht geschehen.
Auch das zweite Formular ist nun voll funktionsfähig und für den Einsatz bereit.
11.9.4 Profilverwaltung einbinden
Damit das System eine Verbindung zum Empfängerprofil herstellen kann, das angezeigt und bearbeitet werden soll, muss beim Aufruf die AGNITAS-User-ID (agnUID) mit übermittelt werden. Deshalb kann das Formular Profilverwaltung nur aus einem Newsletter heraus angesteuert werden, andernfalls wird immer das Fehlerformular angezeigt. Kopieren Sie die URL, die Ihnen unterhalb des Formularnamens angezeigt wird. Neben der CompanyID und dem Formularnamen enthält der Link auch bereits einen Parameter für die agnUID. Diesen Link können Sie wie jeden anderen Link auch direkt im Mailing einbinden.
Im vorliegenden Beispiel könnte der Formularaufruf so aussehen:
Der Platzhalter für die agnUID wird erst im Mailing mit einem echten Empfängerprofil gematcht und ersetzt. Die agnUID generiert sich verschlüsselt aus den Empfängerdaten und kann explizit einem Datensatz zugeordnet werden.
Um also das Formular Profilverwaltung zu testen, müssen Sie den Link in ein beliebiges Mailing einbetten. Anschließend klicken Sie in der Vorschau für einen Testempfänger auf diesen Link. Jetzt sollten Sie das Erfolgsformular mit den Daten des Testempfängers im Browser sehen können. Wenn Ihr Test erfolgreich war, können Sie den Link einfach im Mailing belassen, da er für jeden Empfänger das individuelle Profil öffnet.
Anstelle einer langen URL können Sie auch das agnTag für Formulare verwenden. Das sähe in unserem Beispiel so aus:
Tipp: Sie können Formularaufrufe im Mailing als administrative Klicks erfassen, dann sehen Sie auf einen Blick in der Statistik, wie viele Klicks auf Ihre eigentlichen Inhalte erfolgt sind. Mehr erfahren Sie in Kapitel Links bearbeiten.




