One solution that springs to mind:
You could have a table in the database that has: the date, the row id to pull from from this date. Each time your script runs, it querys that table and if a row exists for this date it uses that, otherwise it pulls a random row and puts that row id in the table.
This will double the hits on your database though, so its not so good, but its easy to impliment
Option 2: if you know how many items are in your database you could devise some algorithm based on the the date to select the row for today, minus side to this is that it is fairly difficult to make this truly random.
Option 3: Run a cron job to randomly pick a row id each day and write that to either the php file or to a file that php reads for the row id. (like a one line include file with that variable in it.
Hope this helps!