0 votes
in SoSci Survey (dt.) by s205597 (120 points)

Hallo,

in unserem Fragebogen müssen Proband:innen in zwei unterschiedlichen Skalen einen bestimmten Score erreichen, damit sie weiter teilnehmen dürfen und eine automat. Mail mit den nachfolgenden Fragebogen an sie versendet wird.

Wenn die Proband:innen nicht den Score erreichen, wird ihnen angezeigt, dass sie leider nicht weiter teilnehmen dürfen.
Leider wird diesen Proband:innen aber noch die Fehlermeldung "Dieses Interview wurde nicht in Verbindung mit einer Serienmail begonnen, daher kann mailSchedule() den passenden Adressaten nicht ermitteln." angezeigt, da sie aufgrund ihres zu niedrigen Scores ja nicht die Seite angezeigt bekommen, um ihre Mailadresse einzutragen...
Können Sie mir weiterhelfen, wie ich es schaffe, dass der interne Befehl, bei Personen mit ausreichendem Score den autom Mailversand zu starten, ausgelöst wird, während bei Personen mit nicht ausreichendem Score nicht die Fehlermeldung angezeigt wird, dass der autom Mailversand nicht gestartet werden konnte (weil ja offensichtlich keine Mail eingetragen wurde...).

Vielen lieben Dank!

by SoSci Survey (306k points)
Wie kommen die Befragten denn zum Fragebogen (per Serienmail oder ist das ein öffentlicher Link) und an welcher Stelle erfährt SoSci Survey (z.B. per Opt-In-Frage) die Mailadresse der Person?
by s205597 (120 points)
Der Vorgang ist: Öffentlicher Link -> erster Fragebogen zur Prüfung der Eignung -> bei Eignung: per Opt-In-Frage Mailadresse der Person abfragen -> geeignete Personen bekommen demnach eine Mail für die kommenden Fragebögen, die anstehen
Verwendet dafür wird der Befehl:
$personID = value('EN01');  
$zeitpunkt = strtotime('+60 seconds');  
mailSchedule($personID, 1, $zeitpunkt);

Bei Personen, die aber nun NICHT geeignet waren, steht der Befehl trotzdem im Skript (leider kenne ich die richtigen Termini nicht). Diese Personen bekommen deshalb leider folgenden Hinweis angezeigt: Dieses Interview wurde nicht in Verbindung mit einer Serienmail begonnen, daher kann mailSchedule() den passenden Adressaten nicht ermitteln.
Dass dieser Hinweis auftaucht bei ungeeigneten Personen möchte ich verhindern...
Danke!!

1 Answer

0 votes
by SoSci Survey (306k points)

Bei Personen, die aber nun NICHT geeignet waren, steht der Befehl trotzdem im Skript

Verwenden Sie für diesen PHP-Code einfach denselben Filter, anhand dessen Sie auch die Opt-In-Frage verstecken. Wenn Sie die Opt-In-Frage also z.B. wie folgt präsentieren...

if (valueSum('AB01') > 10) {
  question('OP01');
}

... dann würden Sie das IF auch für den den Code mit mailSchedule() verwenden:

if (valueSum('AB01') > 10) {
    $personID = value('EN01');  
    $zeitpunkt = strtotime('+60 seconds');  
    mailSchedule($personID, 1, $zeitpunkt);
}

Alternativ können Sie prüfen, ob eine Personenkennung vorliegt - diese fehlt nämlich auch dann, wenn keine Mailadresse eingegeben wurde:

$personID = value('EN01');
if ($personID) {
    $zeitpunkt = strtotime('+60 seconds');  
    mailSchedule($personID, 1, $zeitpunkt);
}

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

...