0 votes
in SoSci Survey (dt.) by s165444 (130 points)
edited by SoSci Survey

Hallo,

ich möchte eine Zeitbegrenzung für die für die Bearbeitung von jeweils nur einer Frage auf einer Seite. Außerdem rotieren die Fragen zufällig. Ich habe jeweils 3 Fragen auf einer Seite von denen immer die erste zeitbegrenzt sein soll (nach Ablauf der Zeit, soll Bearbeitung nicht mehr möglich sein), dies ist auch immer die Frage die rotiert, die anderen beiden Fragen bleiben gleich und sind ohne Zeitbegrenzung.

bis jetzt habe ich diesen PHP-Code

// Teil 1: Liste der Fragen erstellen und mischen
if (!isset($fragen)) {
  $fragen = array(  // Liste der Frage-Kennungen
    'AW03',
    'AW05',
    'AW06',
  );
  // Die Liste zufällig mischen
  shuffle($fragen);
  // Die Rotation für eine eventuelle Wiederholung der Seite zwischenspeichern
  registerVariable($fragen);
}
// Teil 2: Fragen anzeigen
$i = loopPage(count($fragen));
question($fragen[$i]);
question('K002');
question('SI01');

Die Fragen "AW03, AW05, AW06" sollen jeweils für 10 Sekunden begrenzt sein. Ich habe leider keine ähnliche Fragestellung bei meiner Suche gefunden, vielleicht könntet ihr mir weiterhelfen!

Viele Grüße

1 Answer

0 votes
by SoSci Survey (306k points)

nach Ablauf der Zeit, soll Bearbeitung nicht mehr möglich sein

Das ist der Knackpunkt: In welcher Form soll die Bearbeitung denn eingeschränkt werden? Soll die Frage einfahc ausgeblendet werden (am einfachsten) oder möchten Sie ein oder mehrere Eingabefelder sperren? Da Sie nicht geschrieben haben, um welchen Fragetyp es geht, werden Sie sich die optimale Lösung hier selbst überlegen müssen.

Was den Rest angeht, ist es gar nciht so schwer. Aber wenn Sie mehrere Fragen pro Seite haben und dann auch noch eine gezielt ausblenden möchten, wäre es m.E. in Ihrem Fall sinnvoller, die Seiten zu rotieren anstatt mit loopPage() zu arbeiten. Ihr Code scheint mir den in dem Fall auch nicht ganz korrekt, weil K002 und SI01 immer wiederholt werden, sodass die Teilnehmer die Antworten überschreiben: Seiten rotieren

Auf der Seite, auf welcher AW03 zeitbegrenzt werden soll, brauchen Sie dann nur einen kleinen JavaScript-Code, welcher die Frage nach der definierten Zeit ausblendet oder die Eingabefelder sperrt, z.B.

<script type="text/javascript">
window.setTimeout(function() {
  document.getElementById("AW03_qst").style.display = "none";
}, 10000);
</script>
by s165444 (130 points)
Vielen Dank für Ihre Antwort!
Dass die Eingaben in meinem Code überschrieben werden war mir nicht klar. Dann werde ich wohl besser probieren die Seiten rotieren zu lassen.

Bei den Fragen handelt sich um Fragen mit Auswahlempfehlungen. Es würde völlig ausreichen, wenn die Frage nach Ablauf der Zeit einfach ausgeblendet wird!

Viele Grüße
by SoSci Survey (306k points)
> Dass die Eingaben in meinem Code überschrieben werden war mir nicht klar.

Laut Ihrem Code oben wurden dieselben (nicht nur die gleichen!) Fragen auf mehreren Seiten nacheinander immer wieder angezeigt. In diesem Fall legt SoSci Survey die Frage inkl. Antwort nochmal vor und der Teilnehmer kann die Antwort ändern.

Wenn Sie die gleiche Frage mehrfach präsentieren möchten, legen Sie im Fragenkatalog bitte einfach Kopien der Frage an.

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

...