I’m currently displaying a random row from all the entries and that works fine.
SELECT * FROM $db_table where live = 1 order by rand() limit 1
now, i’d like to limit it to the last 100 entries in the db.
every row in the db has an ID and a timestamp.
it’s a small database, so overhead-minimization is not a priority.
thanks!
EDIT:
Still can’t get it running.. I get a mysql_fetch_array error:
'Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource
Here’s all of my code:
<?php $sql = 'SELECT * FROM (SELECT * FROM $db_table ORDER BY $datetime DESC LIMIT 100) ORDER BY rand() LIMIT 1'; $query = mysql_query($sql); while($row = mysql_fetch_array($query)) { echo ''.$row['familyname'].''; } ?>
Thanks again!
This is what I came up with off the top of my head. I’ve tested it and it works in SQLite, so you shouldn’t have much trouble with MySQL. The only change was that SQLite’s random function is random() not rand():