Tom: Anleitung zum Erstellen eines Quiz/ quizähnlichen Spiels gesucht

Beitrag lesen

Hello,

Arbeite mit einer Session.
Gebe den Fragen eineindeutige Identifier.
Merke Dir in der Session, welche Frage der Teilnehmer schon hatte. Dafür eignet sich am beten ein Subarray im $_SESSION-Array.

ja (falls man mit PHP arbeitet :-)).

Das geht sicherlich auch mit Perl oder in C. Da heißt dann nur die Session-Variable ander :-D

Nun kannst Du aus dem Fragenpool immer eine neue Frage auswürfeln, in der Session des Teilnehmers nachschauen, ob er diese schon hatte. Wenn sie schon da war, wiederholst Du einfach das Würfeln nochmal.

nö, das ist ineffektiv. Das "Würfeln" beschränkt sich einfach auf die Liste der Fragen, die noch nicht gestellt wurden. Ein Wurf genügt somit. Deswegen kann es sinnvoll sein, auch die Liste der noch nicht gestellten Fragen zu führen. Die ausgewürfelte Frage wird anschließend aus dieser Liste entfernt und an die Liste der bereits gestellten Fragen angehängt.

Es ist aber besonders ineffektiv, mit einem Sieb zu arbeiten, wenn man im Fragenpool sehr viele Fragen hat, mehrere Mitspieler und nur eine kleine Untermenge der Fragen zur Aufgabe werden.

Man könnte aber mit zwei Tabellen in der Datenbank arbeiten.
Eine enthält die Gesamtmenge der Fragen und die andere die User-Aufgaben-Paarungen, die schon vorkamen.

Dann lässt sich das Ganze sicherlich durch eine Abfrage erledigen. Darin bist Du aber besser :-)

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
 ☻_
/▌
/ \ Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de