Hallo,
für die Website meines Vereins entwickle ich grade ein Quiz. Man soll einstellen können, wie viele Fragen man angezeigt bekommen möchte und diese Anzahl an fragen soll dann zufällig aus dem Verzeichnis geladen werden. So weit so gut. Zum Problem (1): Auch wenn man auf Auswertung klickt werden die Fragen zufällig ausgewählt, es werden also andere Fragen bewertet als die bearbeiteten. Hat dafür jemand ne Lösung?
Problem (2): Es werden mal drei Fragen angezeigt und mal vier, obwohl lich eindeutig angegeben habe dass die Fragenanzahl <= 3 sein soll. Woran liegt das?
Vielen Dank schonmal
LG
für die Website meines Vereins entwickle ich grade ein Quiz. Man soll einstellen können, wie viele Fragen man angezeigt bekommen möchte und diese Anzahl an fragen soll dann zufällig aus dem Verzeichnis geladen werden. So weit so gut. Zum Problem (1): Auch wenn man auf Auswertung klickt werden die Fragen zufällig ausgewählt, es werden also andere Fragen bewertet als die bearbeiteten. Hat dafür jemand ne Lösung?
PHP-Code:
<body>
<?php
include ("header.php");
//Voreinstellung für inkaktives Quiz
$quiz = false;
$farbe = false;
$einfachefragen = true;
$mittlerefragen = true;
$schwerefragen = true;
//Quiz wird aktiviert
if (isset($_POST['quiz'])){ $quiz = true;}
$punkte = 0;
$wievielefragen = 3;
$fragenbremse = 0;
$fragensatz = array("quiz/arraystartinhalt.txt"); //Arraysetzung damit man ihm was anhängen kann
?>
<main>
<section id=Fechten>
<h1 id=topping >Quiz für Fechter</h1>
<article style="width:80%;margin:auto;">
<form action="quiz.php#auswertung" method="post">
<?php
if ($einfachefragen == true){
$alle_a_fragen = scandir('quiz/a'); //A-Fagen auslesen
foreach ($alle_a_fragen as $a_fragen) { // Ausgabeschleife
if ($a_fragen != "." AND $a_fragen != ".."){ //den "Müll" rauslassen
$a_pfad = "quiz/a/".$a_fragen; //Fragendateipfad
array_push($fragensatz, $a_pfad);//Einfügen in den Fragensatzdateipfadarray
}}}
if ($mittlerefragen == true){
$alle_b_fragen = scandir('quiz/b'); //B-Fagen auslesen
foreach ($alle_b_fragen as $b_fragen) { // Ausgabeschleife
if ($b_fragen != "." AND $b_fragen != ".."){ //den "Müll" rauslassen
$b_pfad = "quiz/b/".$b_fragen; //Fragendateipfad
array_push($fragensatz, $b_pfad);//Einfügen in den Fragensatzdateipfadarray
}}}
if ($schwerefragen == true){
$alle_c_fragen = scandir('quiz/c'); //A-Fagen auslesen
foreach ($alle_c_fragen as $c_fragen) { // Ausgabeschleife
if ($c_fragen != "." AND $c_fragen != ".."){ //den "Müll" rauslassen
$c_pfad = "quiz/c/".$c_fragen; //Fragendateipfad
array_push($fragensatz, $c_pfad);//Einfügen in den Fragensatzdateipfadarray
}}}
//Entgültige Reihenfolge und Ausgabe nach Zusammenstellung aller Fragen
if ($quiz == false) {shuffle($fragensatz);}
foreach ($fragensatz as $fragenausgabe){ //Endprozess der Fragen startet hier
if ($fragenbremse <= $wievielefragen){ //Begrenze Fragenanzahl gemäß Einstellung
include ($fragenausgabe);
++$fragenbremse;
}}
?>
<input type=submit value="Auswerten">
<input type=hidden name="quiz" value="quizA">
</form>
</article>
<?php if ($quiz == true) {include ("quiz/auswertung.php"); } ?>
</section>
</main>
Problem (2): Es werden mal drei Fragen angezeigt und mal vier, obwohl lich eindeutig angegeben habe dass die Fragenanzahl <= 3 sein soll. Woran liegt das?
Vielen Dank schonmal
LG
Kommentar