Aufgabe nur einblenden, wenn auf letzter Seite "..." gewählt wurde


makipra

Grünschnabel
Hallo :)


Ich habe es endlich geschafft eine Aufgabe zu programmieren, bei denen Probanden Wörter angezeigt bekommen und sie danach in ein offenes Feld die Anzahl der Silben eintragen sollen. Noch auf der Seite haben sie einen "Antworten prüfen" Button um zu sehen, ob sie richtig sind oder nicht (also ohne auf die nächste Seite klicken zu müssen).
Das ganze ist nur eine Füllaufgabe für eine Wartezeit auf der jeweiligen Seite (countdown läuft runter), bevor sie zur nächsten Seite klicken können.


ABER: Je nachdem welche Option sie auf der vorherigen Seite gewählt haben (in diesem Fall Auto oder Fahrrad) soll die Füllaufgabe erscheinen oder eben nicht erscheinen. Bei Wahl Auto, soll sie nicht kommen, da die Leute da nur 10sek warten müssen. Beim Fahrrad zwischen 20-70sek.


Hier sieht man den Code den ich verwendet habe.
Aber was kann ich tun, um die Info von der Wahl auf der vorherigen Seite abzufragen und somit erscheinen lassen oder eben nicht?


Danke im Voraus!!!

Code:
<p>Wie viele Silben hat das Wort...</p>
<br>
<small><b>Achterbahnfahrt</b></small><br>
<input type="text" id="answer_1"/>
<br><br>
<small><b>Baukastenelement</b></small><br>
<input type="text" id="answer_2"/>
<br><br>
<small><b>Toilettenpapierhalterung</b></small><br>
<input type="text" id="answer_3"/>
<br><br>
<button id="eval_button">Antworten prüfen</button>
<br>
<p id="display_result"></p>
<script type="text/javascript">
<!
-- document.getElementById("eval_button").addEventListener("click", function(event){
event.preventDefault();
answer1 = document.getElementById("answer_1").value;
answer2 = document.getElementById("answer_2").value;
answer3 = document.getElementById("answer_3").value; 
if(answer1 == "4" && answer2 == "6" && answer3 == "8"){ 
document.getElementById("display_result").textContent = "Die Antworten sind korrekt!";
}
else{
document.getElementById("display_result").textContent = "Die Antworten sind leider nicht korrekt!";
}
});

// -->
</script>
 
Zuletzt bearbeitet:

Technipion

Erfahrenes Mitglied
Hallo,
bitte HTML und Code nicht einfach ins Forum posten, sondern immer als Textblock einfügen (Einfügen -> Code).

Aber was kann ich tun, um die Info von der Wahl auf der vorherigen Seite abzufragen und somit erscheinen lassen oder eben nicht?
Du könntest in der URL einen Parameter mitgeben. Der kann dann in PHP über $_GET abgefragt werden. Ein einfaches if/else sollte danach ausreichen.

Gruß Technipion
 

makipra

Grünschnabel
Hallo,
bitte HTML und Code nicht einfach ins Forum posten, sondern immer als Textblock einfügen (Einfügen -> Code).


Du könntest in der URL einen Parameter mitgeben. Der kann dann in PHP über $_GET abgefragt werden. Ein einfaches if/else sollte danach ausreichen.

Gruß Technipion
Danke für deine Antwort! Code habe ich auch geändert, danke für den Hinweis.

Ich habe auf der Seite (nennt sich sosci survey), auf der ich das programmieren muss, die Möglichkeit in Feldern codes zu HTML und PHP einzutragen. Den genannten Code habe ich jetzt ins HTML feld eingegeben. Wenn ich den Code der Aufgabe aber nicht zusammen mit dem &_GET bringe, dann wird das nicht funktionieren denke ich, oder wie könnte ich das dann verbinden? Lieber alles ins PHP feld und dann den anderen code als Html markieren? geht das?

Sorry, ich bin super unwissend und habe für den jetzigen code schon mehr als eine Woche gebraucht :(
Und das mit dem URL verstehe ich auch nicht sooo wirklich. Gibts noch ne Laien-erklärung dazu? :)
 

Technipion

Erfahrenes Mitglied
Hier ist eine quick'n'dirty Erklärung dazu:

Sagen wir du hast die Hauptseite auf www.example.com/umfrage.php laufen. Die Füllaufgabe läuft auf www.example.com/warten.php

Außerdem hast du zwei weitere PHP-Dateien:
warten_quiz.php enthält deinen aktuellen PHP-Code mit Quiz drin
warten_no_quiz.php enthält die Seite zum Warten, allerdings ohne das Quiz drin.

Dann könnte man warten.php so aufbauen:
PHP:
<?php

if (isset($_GET['quiz'])) {
  require 'warten_quiz.php';
} else {
  require 'warten_no_quiz.php';
}

?>
Sooo. Irgendwie leitest du ja die Menschen von umfrage.php ausgehend auf warten.php weiter. Hier kannst du jetzt noch einen Parameter in der URL mitgeben. D.h. es gibt jetzt
www.example.com/warten.php?quiz und www.example.com/warten.php
das erste mit Quiz und das zweite ohne.

Verstehst du das?

Gruß Technipion
 

Neue Beiträge