Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
de:create:functions:mailresume [27.02.2020 15:57]
admin [Serienmail nach Opt-In-Frage]
de:create:functions:mailresume [27.02.2020 17:32] (aktuell)
admin [Serienmail nach Opt-In-Frage]
Zeile 101: Zeile 101:
   - Beim Double-Opt-In ist es sinnvoll, den Versand erst nach Bestätigung der Mailadresse auszulösen. Wie das funktioniert wird in folgendem Kapitel erläutert: [[:/de:survey:opt-in-live]]   - Beim Double-Opt-In ist es sinnvoll, den Versand erst nach Bestätigung der Mailadresse auszulösen. Wie das funktioniert wird in folgendem Kapitel erläutert: [[:/de:survey:opt-in-live]]
   - Wenn die Serienmail direkt verschickt werden soll, kann man die Bestätigungsmail der (Double-)Opt-In-Frage zugleich als Einladungsmail zu einem Fragebogen genutzt werden (//Weitere Einstellungen// -> //Weiterleitung nach Bestätigung// -> //Fragebogen-Link aus//). Allerdings ist der Link in der Bestätigungsmail nur 24 Stunden gültig. Eine "richtige" Serienmail-Einladung ist i.d.R. für den gesamten Erhebungszeitraum gültig, sofern die Gültigkeit in den Serienmail-Einstellungen nicht begrenzt wird.   - Wenn die Serienmail direkt verschickt werden soll, kann man die Bestätigungsmail der (Double-)Opt-In-Frage zugleich als Einladungsmail zu einem Fragebogen genutzt werden (//Weitere Einstellungen// -> //Weiterleitung nach Bestätigung// -> //Fragebogen-Link aus//). Allerdings ist der Link in der Bestätigungsmail nur 24 Stunden gültig. Eine "richtige" Serienmail-Einladung ist i.d.R. für den gesamten Erhebungszeitraum gültig, sofern die Gültigkeit in den Serienmail-Einstellungen nicht begrenzt wird.
-  - Wenn eine "richtige" Serienmail im Anschluss an ein Single-Opt-In verschickt werden soll, kommt der Befehl ''mailSchedule()'' zum Einsatz. Der PHP-Code wird (frühestens) auf der Seite platziert, welche auf die Opt-In-Frage folgt. Als erster Parameter muss die Teilnehmer-Kennung der soeben registrierten Adresse verwendet werden.+  - Wenn eine "richtige" Serienmail im Anschluss an ein Single-Opt-In verschickt werden soll, kommt der Befehl ''mailSchedule()'' zum Einsatz. Dies wird nachfolgend genauer erläutert. 
 + 
 +Der PHP-Code mit dem ''mailSchedule()'' wird (frühestens) auf der Seite platziert, welche auf die Opt-In-Frage folgt. Denn erst dort kennt der Befragungsserver die neue E-Mail-Adresse und hat ihr eine Personekennung (SERIAL) zugewiesen. Diese Personenkennung ist als erster Parameter für die Funktion ''mailSchedule()'' erforderlich (so sonst häufig ''false'') verwendet wird. Woher bekommt man die Kennung? Wenn der Teilnehmer in der Opt-In-Frage eine E-Mail-Adresse eingetragen hat, dann ist sie im Datensatz in einer Variable vermerkt, welche dieselbe Kennung wie die Opt-In-Frage hat.
  
 Im folgenden Beispiel hätte die Opt-In-Frage auf Seite 9 die Kennung "OI01". Auf Seite 10 (oder später) würde der folgende PHP-Code dann sofort die Serienmail mit der ID 2 versenden. Das ''value('OI01')'' liefert die Teilnehmerkennung (SERIAL) des neuen Adresseintrags. Im folgenden Beispiel hätte die Opt-In-Frage auf Seite 9 die Kennung "OI01". Auf Seite 10 (oder später) würde der folgende PHP-Code dann sofort die Serienmail mit der ID 2 versenden. Das ''value('OI01')'' liefert die Teilnehmerkennung (SERIAL) des neuen Adresseintrags.
Zeile 122: Zeile 124:
 mailSchedule(value('OI01'), 4, strtotime('+14 days')); mailSchedule(value('OI01'), 4, strtotime('+14 days'));
 </code> </code>
 +
 +Wenn die Möglichkeit besteht, dass der Teilnehmer keine E-Mail-Adresse einträgt, sollte noch ein ''if'' ergänzt werden, um Fehlermeldungen zu vermeiden:
 +
 +<code php>
 +$serial = value('OI01');
 +if ($serial) {
 +  mailSchedule($serial, 2, 0);
 +  mailSchedule($serial, 3, strtotime('+7 days'));
 +  mailSchedule($serial, 4, strtotime('+14 days'));
 +}
 +</code>
 +
 +Beachten Sie, dass die Personenkennung (SERIAL) hier in einer PHP-Variable (''$serial'') zwischengespeichert wird, um sie direkt in den ''mailSchedule()''-Aufrufen zu verwenden. Selbstverständlich könnte hier ebenso ''value('OI01')'' stehen.
de/create/functions/mailresume.txt · Zuletzt geändert: 27.02.2020 17:32 von admin
 
Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht: CC Attribution-Share Alike 4.0 International
Driven by DokuWiki