Ich versuche gerade einen Timer über mehrere Seiten zu erstellen. Ich habe mich an die Hilfestellungen der Seite gehalten und der Timer funktioniert auch so wie er soll. Leider wird mir immer folgende Fehlermeldung angezeigt:
For the placeholder %timeLeft% neither an input field by prepare_input() has been created nor any content by using replace().
Da ich blutiger Anfänger bin, komme ich seit Stunden nicht weiter. Weiß jemand wo genau ich diese Befehle eingeben bzw. wie ich diese vervollständigen muss?
Hier folgender PHP-Code:
$timeLeft = $timeout - time();
show('TI01', array(
'%timeLeft%' => $timeLeft
));
question('TI01'); // Timer, JavaScript-Code EG
Der HTML-Code (TI01):
<!-- HTML-Element zur Anzeige der Zeit -->
<div id="timeDisplay" style="font-size: 200%; margin: 16px 0; text-align: center">–</div>
<script type="text/javascript">
<!--
// Verbleibende Zeit initialisieren
var timeLeft = %timeLeft%;
var timeStart = new Date();
// Funkton zur Aktualisierung der Anzeige und Prüfung der Zeit
function updateCountdown() {
// Zeit berechnen
var now = new Date();
var timePage = Math.floor((now.getTime() - timeStart.getTime()) / 1000); // Vergangene Zeit [Sek.]
var remain = timeLeft - timePage;
// Zeit abgelaufen?
if (remain <= 0) {
remain = 0;
// Timer stoppen
window.clearInterval(timerInterval);
// Eine Meldung anzeigen (optional)
alert("Die Zeit ist vorbei.");
// Den Teilnehmer zur nächsten Seite weiterleiten (optional)
// SoSciTools.submitPage();
}
// Zeit anzeigen
var display = document.getElementById("timeDisplay");
if (!display) {
return;
}
while (display.lastChild) {
display.removeChild(display.lastChild);
}
var minutes = Math.floor(remain / 60);
var seconds = String(remain - 60 * minutes);
if (seconds.length < 2) {
seconds = "0" + seconds;
}
var displayText = String(minutes) + ":" + seconds;
var displayNode = document.createTextNode(displayText);
display.appendChild(displayNode);
}
// Initialisierung
var timerInterval = window.setInterval(updateCountdown, 250);
updateCountdown();
// -->
</script>
Vielen Dank!