0 votes
ago in SoSci Survey (dt.) by s280371 (110 points)

Ich möchte für meine Masterarbeit eine 2 Wellige Befragung durchführen mit Selbstrekrutierung. Im ersten Fragebogen (F1) möchte ich die Mail Adressen der Teilnehmer über den Fragetyp "Opt-In für Mail Verteiler" sammeln und direkt im gleichen F1 die erste Erhebung durchführen. Dabei möchte ich unbedingt ohne die Bestätigungsmail arbeiten, sodass die Teilnehmer nach der Mail Abfrage direkt die Fragen aus Welle 1 beantworten. Dazu habe ich im Opt-in Fragetyp "direkt speichern (keine Bestätigungsmail") eingetragen. --> das klappt auch gut, die Mail Adressen sehe ich im Bereich "Adressliste"
Nach 3 Monaten soll dann automatisch eine Mail über mailSchedule zum 2. Fragebogen (F2) einladen.
Wenn ich das PHP Feld mit dem Code für mailschedule am Ende des ersten FB einfüge, bekomme ich die Meldung, dass der Versandt nicht klappt, da der Fragebogen (F1) nicht über eine Serienmail gestartet wurde.
Wie kann ich die Mails automatisieren, ohne dass die Teilnehmer in der Opt In Frage ihre Adresse bestätigen müssen? In welchen Fragebogen muss ich das PHP Feld einfügen, damit die Mails 3 Monate nach Beantwortung von F1 abgesendet werden?

Danke für eure Hilfe!

1 Answer

0 votes
ago by s000002 (337k points)

Bitte tragen Sie in der Funktion mailSchedule() als ersten Parameter statt false die Personenkennung der Adresse ein, die in der Opt-In-Frage eingegeben wurde.

Wenn die Kennung der Opt-In-Frage AB01 ist, dann sieht das z.B. so aus:

mailSchedule(value('AB01'), ...);
ago by s280371 (110 points)
Ich habe aber ja keine Personenkennung? Die Teilnehmer geben ausschließlich ihre Email Adresse ein, auf Basis der dann die Mail zum 2. Fragebogen versendet werden soll.
Für mich ist es eig auch egal, ob die Leute über ihren eigenen FB Link auf die 2. Befragung zugreifen, weil ich noch einen individuellen Code erstelle lasse, den die Teilnehmer bei beiden Erhebungen eingeben müssen, sodass ich die Datensätze matchen kann.
ago by s000002 (337k points)
Die Personenkennung wird von der Opt-In-Frage automatisch erstellt. Jeder Adresseintrag hat eine.
ago by s280371 (110 points)
Die werden mir in der Adressliste aber nicht angezeigt :( Woher weiß ich, welche Nummer ich eingeben muss in die Formel? dann muss ich das ja immer händisch anpassen? Ich will doch einfach nur, dass die Serienmails automatisch gesendet werden
ago by s000002 (337k points)
> Die werden mir in der Adressliste aber nicht angezeigt

Sollen sie auch nicht, wenn Sie den Datenschutz-Modus pseudonym ausgewählt haben. Lassen Sie das so.

> Woher weiß ich, welche Nummer ich eingeben muss in die Formel?

Sie müssen das gar nicht wissen. Nur der Fragebogen.

> dann muss ich das ja immer händisch anpassen?

Nein, Sie sagen dem Fragebogen, dass er sich diese Kennung aus der Opt-In-Frage holen soll. Deshalb ja das value() in dem Beispiel-Code, den ich oben gepostet hatte :)
ago by s280371 (110 points)
Lasse ich das Value Feld dann leer oder gebe ich die Nummer aus deinem Beispiel ein? also Value() oder value("AB01") ?
ago by s000002 (337k points)
Wie oben in der Antwort geschrieben: Sie geben dort die Kennung Ihrer Opt-In-Frage ein. Denn eine Variable mit diesem Namen speichert die Personenkennung im Datensatz.
ago by s280371 (110 points)
Ich hab nun alle möglichen Lösungen ausprobiert und gestern ist einmal eine Serienmail rausgegangen im test. Nun hat es heute erneut nicht mehr funktioniert.
Über die Single Opt in, werden die Adressen im Adressbuch abgelegt, das klappt. Die Mail geht aber weder mit "mailSchedule(Value(xx), 2, 30)" nach 30 Sekunden raus, noch mit "mailSchedule(false, 2, 30)". Vor den Adressen im Adressbuch ist ein kleines Uhrensymbol zu erkennen, hat das vllt eine Bewandtnis?

Ich bin langsam echt verzweifelt und dankbar um jede Hilfe.
ago by s000002 (337k points)
> Nun hat es heute erneut nicht mehr funktioniert.

Denken Sie bitte daran, dass E-Mail-Adressen standardmäßig nur einmal in die Adressliste aufgenommen werden. Wenn Sie erneute mit derselben Adresse testen möchten, müssen Sie die E-Mail sowohl aus der Adressliste als auch aus dem Papierkorb löschen.
ago by s280371 (110 points)
Ich habe die Adressen jedes Mal aus dem Papierkorb gelöscht
ago by s280371 (110 points)
Nachdem ich in FB1 die Mailadressen sammle, muss ich den PHP Code mit der mailSchedule Funktion in den FB2 einbauen, richtig? Baue ich die Funktion in FB1 ein, erhalte ich eine Fehlermeldung beim Durchklicken des FBs, dass ein Mailschedule nicht möglich ist, da dieser FB nicht über eine Serienmail gestartet wurde.
ago by s000002 (337k points)
> Nachdem ich in FB1 die Mailadressen sammle, muss ich den PHP Code mit der mailSchedule Funktion in den FB2 einbauen, richtig?

Wenn Sie in FB1 die Opt-In-Frage haben und dort ein Single-Opt-In verwenden, dann kommt das mailSchedule() auf die Seite nach dem Opt-In (oder auf eine spätere Seite) in FB1.

> dass ein Mailschedule nicht möglich ist, da dieser FB nicht über eine Serienmail gestartet wurde.

Diese Fehlermeldung bekommen Sie nur, wenn das value() im mailSchedule()-Befehl fehlt.
ago by s280371 (110 points)
Ich habe in FB1 nun nach der Mailabfrage eine Seite mit dem PHP code eingefügt. Die Mail wird auch versendet, aber sobald man auf die Seite des FB mit dem PHP Code gelangt, kommt folgende Fehlermeldung: Im PHP-Code trat ein Fehler auf.
Fehler im Fragebogen:
Uncaught Error: Undefined constant "s2survey\questionnaire\environment\AB02" in /var/www/s2survey/html/s2survey/phpcode/PHPCodeExecutor.php(569) : eval()'d code:3 Stack trace: #0 /var/www/s2survey/html/s2survey/phpcode/PHPCodeExecutor.php(569): eval() #1 /var/www/s2survey/html/s2survey/questionnaire/php/PHPCodeExecutorQnr.php(73): s2survey\phpcode\PHPCodeExecutor->runCode() #2 /var/www/s2survey/html/inc/QuestionnairePHP.php(640): s2survey\questionnaire\php\PHPCodeExecutorQnr->runCode() #3 /var/www/s2survey/html/s2survey/questionnaire/QuestionnaireElement.php(517): QuestionnairePHP->runElement() #4 /var/www/s2survey/html/s2survey/questionnaire/QnrPage.php(1730): s2survey\questionnaire\QuestionnaireElement->run() #5 /var/www/s2survey/html/s2survey/questionnaire/QnrPage.php(1796): s2survey\questionnaire\QnrPage->runContent() #6 /var/www/s2survey/html/inc/InterviewCase.php(1730): s2survey\questionnaire\QnrPage->runCreate() #7 /var/www/s2survey/html/inc/Interviewer.php(715): InterviewCase->createQuestionnairePage() #8 /var/www/s2survey/html/inc/Interviewer.php(891): Interviewer->handleCreate() #9 /var/www/s2survey/html/inc/Interviewer.php(2041): Interviewer->handleInterview() #10 /var/www/s2survey/html/dw_studie/index.php(4): Interviewer::run() #11 {main} thrown
Zeile: 3
ago by s280371 (110 points)
Der Fehler kommt auch, wenn ich den PHP Code auf eine Seite mit weiteren Fragen platziere
ago by s000002 (337k points)
Das "undefined constant ... AB02" will Ihnen sagen, dass Sie die Anführungszeichen um AB02 vergessen haben.

Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

...