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



## makipra (3. April 2020)

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!!!


```
<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>
```


----------



## Technipion (3. April 2020)

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



makipra hat gesagt.:


> 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 (3. April 2020)

Technipion hat gesagt.:


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


 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 (3. April 2020)

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

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


----------

