Ok... Wie immer gibt es mehrere Möglichkeiten. Bei dem Spiel kommt
erschwerend hinzu, dass die Antwort auf die Frage nicht bekannt ist, wenn
die Spieler antworten, sondern erst später ausgewertet werden kann....

Folgendes ist die einfachste:

Erstmal eine Tabelle für die Spieler:

- User(id, name, email, ....)

Gehen wir davon aus, dass Du nicht per SQL auf die einzelnen Elemente einer
Frage zugreifen musst... Dann kannst Du alle Fragen in einem Text-Feld
definieren:

- Fragen(id, definition, antwort, ausgewertet...)

In dem definitions-Feld definierst Du dann die Frage nach ner eigenen
Fragen-Definitionssprache so, dass Du sie wieder aufbauen kannst. So ist das
Später auch ohne Probleme auf neue Fragetypen ausbaubar

Wie ich das sehe ist im Moment alles mit Dropdown lösbar...
Fragendefinitionen setzen verschiedene Trenner ein. Trenner erster Ebene ist
ein Zeilenumbruch, also vbCrLf(für classic ASP), für die Zweite Ebene ein
Tab, also vbTab und als Trenner letzter Ebene nehmen wir |.
Natürlich wäre die Definition auch als XML lösbar.
Zum Feld antwort und ausgewertet kommen wir später. Am Anfang sind diese mit
"" bzw. mit false zu belegen.

Definitionen könnten also Z.B. So aussehen:

> 1. Fragetyp:
> Wie endet das Match?
> Antwort sind je 2 Zahlen, ergibt dann je nach Antwort verschiedene 
> Punkte. (also z.B. 4:8)

1
TXT     Wie endet das Match?<br>
DD      A       0|1|2|3|4|5|6|7|8|9
TXT     zu
DD      B       0|1|2|3|4|5|6|7|8|9

> 2. Fragetyp:
> Wann wird die erste Strafe gesprochen?
> Antwort ist z.B. Zeitspanne (Minuten) über ein Dropdown-Feld wählbar. 
> Punkte, wenn die Richtige Antwort gegeben wurde. Je nach 
> Schwierigkeitsgrad der Frage verschiedene Punktzahlen.

2
TXT     Wann wird die erste Strafe gesprochen?<br>
TXT     Nach
DD      A       5|10|15|20|25|30|...
TXT     Minuten

> 3. Fragetyp:
> Wer wird gewinnen?
> Antwort als DropDown mit Namen. Punkte wenn richtig gewählt.

3
TXT     Wer wird gewinnen?<br>
DD      A       MannschaftA|MannschaftB

> 4. Fragetyp:
> Bester Spieler?
> Auswahl eines Spielers. Jedes Mal wenn dieser Spieler ein Tor 
> schiesst, 
> erhält der Benutzer Punkte.

4
TXT Bester Spieler?
DD      A       SpielerA|SpielerB|SpielerC|SpielerD|...


Zur Erklärung:
Die erste Zeile gibt den Typ an und der ist wichtig, damit man weiss wie die
Antwort zu bewerten ist, bzw. welcher Funktion die Auswertung übernehmen
soll - dazu später mehr.
Jede weitere Zeile ist ein Befehl zur Definition der Frage. Bis jetzt gibt
es nur zwei Befehle.
TXT     enthält nur einen Parameter und der wird direkt ausgegeben.
DD      rendert eine Dropdownlist, wobei der erste Parameter den Namen
angibt und der zweite Parameter die per | getrennten Optionen.


Weiter: Damit man die Antworten der Spieler speichern kann braucht man eine
zusätzliche Tabelle:

- Antworten(ID, UserID, FrageID, antwort, Punkte)

Darin speichert man die Antworten der Spieler.
Hätte z.B. User 3 die erste Frage da oben mit "3:4" beantwortet, also 3 im
ersten Dropdown und 4 im zweiten gewählt, könnte der Eintrag inder Tabelle
so aussehen:

123, 3, 1, "A=3|B=4", NULL

Das Punkte-Feld wird erst bei der Auswertung ausgefüllt.

Irgendwann ist dann das Spiel gelaufen und man kann die Antwort-Spalte in
der Fragen-Tabelle ausfüllen.

Für die Frage vom Typ 1 könnte das so aussehen:
5|2

Für Typ 2:
15

Für Typ 3:
MannschaftA=50|MannschaftB=0

Für Typ 4:
SpielerA=4|SpielerB=2|...


Dann kann man die Auswertung starten, wobei je nach Typ eine andere Funktion
jeweils die Antwort-Definition und die Antwort des Spielers bekommt und dann
eine Punktzahl ausspuckt, die dann für den Spieler in die Antworten-Tabelle
eingetragen wird...
Wenn alles bewertet ist, kann man noch in der Fragen-Tabelle die Frage auf
ausgewertet=true setzen.

Wie man sieht kann man die Fragen Typ 4 und Typ 3 und wenn man die
Antwort-Definition entsprechen macht auch Typ 2 mit der gleichen Funktion
abhandeln, da diese Funktion einfach nur die entsprechende Punktzahl für die
Antwort ausgeben muss.

Für Typ 1 kann man berechnen wie weit man vom Ergebnis entfernt ist o.ä....
Keine Ahnung wie man sowas normalerweise bewertet.


Ich würde zusätzlich noch alle Fragen eines Spiels zusammenfassen indem man
ne weitere Tabelle Spiel vorsieht auf die dann die Fragen des Spiels
referenzieren, also dann so:
- Spiele(id, titel, ausgewertet, ...)
- Fragen(id, spielID, definition, antwort, ...)



Noch Fragen?


Claudius

_______________________________________________
Coffeehouse Mailingliste, Postings senden an:
[email protected]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/coffeehouse

Antwort per Email an