0 votes
in SoSci Survey (dt.) by s181713 (140 points)

Hallo,

der Text wird leider etwas länger, ich versuche mich kurz zu fassen.

Ich arbeite an einer mehrwelligen Befragung. Die Proband:innen füllen eine Vorab-Befragung aus, nach der Vorab-Befragung folgt eine Tagebuchstudie (jeden Abend ein kurzer Fragebogen).

Die Vorab-Befragung (Selbstrekrutierung) findet bei jeder Person zu einem anderen Zeitpunkt statt, die Tagebuch-Befragungen sollen an den darauffolgenden Tagen jeweils zur etwa gleichen Zeit stattfinden.
Die Links zu den Fragebögen werden mithilfe von Serienmails mit der PHP Funktion mailSchedule() versandt.
Ich habe keinerlei Programmierkenntnisse und orientiere mich daher extrem an den (super hilfreichen!) Anleitungen von Soscisurvey.

Ich weiß, dass ich entweder eingeben kann, in wie viel Sekunden ab dem Punkt des Aufrufens des PHP-Codes die nächste Mail raus gehen soll oder mit einem Unix Zeitstempel arbeiten kann. Das habe ich vorhin auch relativ fix alleine hinbekommen (Test mit einer Wegwerfmail).

Weiter steht hier (https://www.soscisurvey.de/help/doku.php/de:survey:opt-in-live) bei Schritt 3:
"Alternativ könnten Sie z.B. auch als dritten Parameter eintragen strtotime('+7 days') oder für einen vordefinierten Zeitpunkt strtotime('2020-10-31 08:00:00')"

Gibt es eine Funktion/ einen Code für "am nächsten Tag um 18 Uhr" (jetzt mal als Beispiel)?
Hab mir etwas die Finger wund gegoogelt und alles mögliche an PHP Funktionen gefunden, bin mir aber bei nichts sicher ob es das ist, was ich suche.

Wenn jemand am 3. Februar um 10h die Vorabbefragung macht, dann hätte ich gerne dass er am 4. Februar um 18h die Serienmail zum ersten Tagebuch-Fragebogen (nächster Fragebogen) bekommt.
Wenn jemand am 3. Februar um 19h die Vorabbefragung macht, dann hätte ich aber gerne genau so, dass er am 4. Februar um 18h die Serienmail für den nächsten Fragebogen bekommt.
Und wenn jemand am 5. Februar die erste Befragung macht, dann hätte ich gerne, dass er am 6. Februar um 18h die Mail bekommt.

Die Uhrzeiten und Tage sind nur Beispiele, ich hoffe, es wird klar was ich meine.

Kann mir jemand helfen, wie man das genau programmiert oder mir sagen, wonach konkret ich googeln soll/ muss? Eine Freundin mit Programmierkenntnissen vermutet, dass es über den Unix-Zeitstempel geht und hat mir aber geraten, mich an das Forum zu wenden.

Vielen lieben Dank im Voraus :)

1 Answer

0 votes
by SoSci Survey (305k points)

Gibt es eine Funktion/ einen Code für "am nächsten Tag um 18 Uhr" (jetzt mal als Beispiel)?

Sie sind schon ganz nah dran ... und zwar erlaubt strtotime() auch so etwas Praktisches wie tomorrow. Ich habe keine Ahnung, was sich die PHP-Entwickler da gedacht haben, aber es wird damit unglaublich einfach:

strtotime('tomorrow 18:00:00')

Hier zum Ausprobieren:
https://de.functions-online.com/strtotime.html

by s181713 (140 points)
Vielen Dank für die schnelle Hilfe!

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

...