Cron jobs, execute a simple php file that executes a query that deletes the row based upon the timestamp.
THe database needs a column for a time-stamp in which you create a timestamp at time of insertion. If you're using mySQL <4.1.1, you want the timestamp to be now()+24 hours, otherwise, the time of insertion is fine (you'll see why below).
The cron will run however much as you want (once per hour, oncer per day, oncer per week, oncer per minute) and execute that delete script.
THe delete script would be something like:
<?php
$conn = mysql_connect('localhost', 'user', 'pass');
mysql_select_db('database');
// MySQL 4.1.1 and up:
$query = "DELETE FROM `table`
WHERE DATE_DIFF(timestamp_column, NOW())>=1";
// MySQL < 4.1
$query = "DELETE FROM `table`
WHERE SUBDATE(NOW(), INTERVAL 1 DAY)>=timestamp_column";
$result = mysql_query($query);
if(!$result)
{
echo "Query Error: ".mysql_error();
}
?>