Hallo,
ich mache gerade einen Mathetrainer für meinen kleinen Bruder und dazu habe ich ein PHP-Script geschrieben, dass die Aufgaben und Ergebnisse aus eine Datenbank holt und diese dann mit dem Eingebenen vergleicht und schließlich, sollte die Eingabe korrekt sein, ein entsprechendes Lob ausgibt und im Feld „done“ eine 1 setzt, damit diese Aufgabe nicht mehr gestellt wird.
Datenbankstruktur: id | katname | schwer | aufgabe | ergebnis | done
katname → kathogorie
schwer → schwierigkeit
Jetzt will ich das er nach der Kathogorie, die man dann anwählt, eine zufällige Aufgabe bekommt und wenn man sie richtig löst wird unter „done“ eine 1 gesetzt.
Eine Beispiel:
Datenbank (Bsp):
1 | kopfrechnen | leicht | 1 + 1 | 2 |
2 | umrechnung | leicht | 100g in kg | 10 |
3 | kopfrechnen | mittel | 12 + 23 | 35 |
4 | kopfrechnen | leicht | 3 + 5 | 8 | 1
5 | kopfrechnen | leicht | 9 + 4 | 13 |
…
Jetzt soll er eben eine zufällige Aufgabe in der Kathegorie „kopfrechnen“ mit der Schwierigkeitsstufe „leicht“ ohne „done“ gleich 1 auswählen.
Wie kann ich das am besten Lösen.
Ich habe es jetzt so gemacht, aber er gibt mir dann die Fehlermeldung (Warning: rand() expects exactly 2 parameters, 1 given in /users/rechnen24/www/Test.php on line 15)
[B][PHP] //Zeile 12
$result = mysql_query(„SELECT id FROM aufgaben where katname=‚$_POST[katname]‘“);
$anzahl=mysql_num_rows($result);
$zufallswert = rand($anzahl);
$abfrage = "SELECT * FROM aufgaben WHERE katname = '$_POST[katname]' LIMIT $zufallswert,1"; [/PHP][/B]