Hallo,
ich will einen Fragebogen erstellen mit über 100 Fragen, wobei jede Frage eine eigene Seite hat und der Fragebogen soll ein Zeitlimit enthalten - so 30 Minuten.
Ich habe die Fragen erstellt und einen Pretest gemacht.
Leider sind einige Fehler aufgetreten. Ich habe keine Ahnung vom Programmieren. Können Sie mir bitte weiterhelfen?
// Ablauf der Zeit als Variable §timeout speichern
if (!isset($timeout)) {
$timeout = strtotime('+30 seconds');
registerVariable($timeout);
}
// Prüfung, ob die Zeit schon abgelaufen ist
$timer = 30; // Der Teilnehmer hat 30 Sekunden Zeit zur Bearbeitung
if (time() >= $time0 + §timer) {
goToPage ('next');
}
// JavaScript zur Anzeige der verbleibenden Zeit
$timeLeft = §timeout - time ();
// JavaScript aus Textbausteine JavaScript_timer1 einbinden
replace('%timeLeft%', $timeLeft);
text('JavaScript_timer1);
Im PHP-Code trat ein Fehler auf.
Fehler im Fragebogen: syntax error, unexpected 'ok' (T_STRING), expecting ',' or ')'
Zeile: 17
PHP-Code
014
015 replace('%timeLeft%', $timeLeft);
016 text('JavaScript_timer1);
017 return 'ok';
Für den Platzhalter %remain% wurde weder ein Eingabefeld mit prepare_input() vorbereitet, noch ein Inhalt mit replace() festgelegt.
<script type="text/JavaScript">
<!--
// Funktion zur Weiterleitung
function weiter() {
// Eine Meldung anzeigen
alert ("Die Zeit ist vorbei.");
// Den Teilnehmer zur nächsten Seite weiterleiten
SoSciTools.submitPage();
}
// Countdown anzeigen
var date0 = new Date ();
var timeout = date0.getTime() + %remain% * 1000;
function updateCountdown() {
// Zeit berechnen
var date = new Date ();
var time = Math.ceil((timeout - date.getTime() - 50) / 1000); // Verbleibende Zeit in Sekunden
// Zeit anzeigen
var out = document.getElementById("remain");
if (!out) {
return;
}
while (out.lastChild) {
out.removeChild (out.lastChild);
}
var minutes = Math.floor(time / 30);
var seconds = String (time - 30 * minutes);
if (seconds.length < 2) seconds = ":" + seconds;
var displayNode = document.createTextNode(Display);
out.appendChild(displayNode);
}
//Initialisierung der Weiterleitung
SoSciTools.attachEvent(window, "load", function(evt) {
// Timerfür automatische Weiterleitung starten
window.setTimeout (weiter, %remain% * 1000);
});
// -->
</script>
Danke im Voraus!