Verwijderd schreef op dinsdag 25 januari 2005 @ 00:53:
mwah handig is anders,
omdat niet elke record goed is
dus dan zou je de records die goed zijn moeten inlezen in een array, daar er 1 uit kiezen met een random getal en dan dat record weer uit de database moeten halen..
Het kan eenvoudiger:
PHP:
1
2
3
4
5
6
7
8
9
10
| $max = mysql_result(mysql_query("SELECT MAX(id) FROM tabel"), 0);
$id = rand(1, $max);
$query = mysql_query("SELECT * FROM tabel WHERE id <= ".$id " LIMIT 1");
if (!($data = mysql_fetch_object($query))) {
$query = mysql_query("SELECT * FROM tabel WHERE id > ".$id " LIMIT 1");
if (!($data = mysql_fetch_object($query))) {
die("Lege tabel!");
}
}
// vanaf hier kun je met $data werken |
Toch zou ik, als ik jou was, liever met MySQL's RAND functie werken. Die is random genoeg. Ik snap ook niet echt wat je hiermee bedoelt:
in hoeverre is dit nou echt random, want het lijkt niet echt random als je op f5 blijft rammen...
De waarde zou hier toch wel degelijk moeten veranderen (dat doet ie bij mij in ieder geval altijd). Misschien zit het ergens anders in je code fout? Of misschien zit de cache van je browser in de weg? Probeer eens een ctrl+f5.
'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.