Ich verstehe nicht, warum du dich so auf den Tag des Monats fixierst.
Wenn ein neues Monat beginnt (1.) dann wird laut deinen Script so schnell nichts mehr aus deiner Datenbank gelöscht. Du löscht alle Datensätze, deren Zahl des Tages zwei kleiner sind als der heutige Tag. Wenn jetzt allerdings heute der erste ist, wird der 30. des lezten Monats nicht gelöscht, da er nicht kleiner/gleich 1 ist.
mit time()-60*60*24*2 bekommst du das akutelle Datum minus zwei Tage.
Du willst alle Einträge löschen, die älter als zwei Tage sind. Dazu nimmst du "ganz einfach" das akutelle Datum und ziehst zwei Tage ab:
$time2=time()-60*60*24;
$ende=mktime(23,59,59,date("m",$time2),date("d",$time2),date("y",$time2))
Jetzt löscht du alle Datensätze, die kleiner sind als der TimeStamp von Vorgestern...
dr_Alex Code ist die "perfekte" Lösung.
Allerdings würde ich einen CronJob für den ganzen Spaß nehmen und nicht bei jedem Seitenaufruf prüfen, ob noch Einträge von Vorgestern vorhanden sind (Bei meinen Seiten mit mehr als 2000 Besuchern täglich wäre das ein Choas)
Wenn ein neues Monat beginnt (1.) dann wird laut deinen Script so schnell nichts mehr aus deiner Datenbank gelöscht. Du löscht alle Datensätze, deren Zahl des Tages zwei kleiner sind als der heutige Tag. Wenn jetzt allerdings heute der erste ist, wird der 30. des lezten Monats nicht gelöscht, da er nicht kleiner/gleich 1 ist.
mit time()-60*60*24*2 bekommst du das akutelle Datum minus zwei Tage.
Du willst alle Einträge löschen, die älter als zwei Tage sind. Dazu nimmst du "ganz einfach" das akutelle Datum und ziehst zwei Tage ab:
$time2=time()-60*60*24;
$ende=mktime(23,59,59,date("m",$time2),date("d",$time2),date("y",$time2))
Jetzt löscht du alle Datensätze, die kleiner sind als der TimeStamp von Vorgestern...
dr_Alex Code ist die "perfekte" Lösung.
Allerdings würde ich einen CronJob für den ganzen Spaß nehmen und nicht bei jedem Seitenaufruf prüfen, ob noch Einträge von Vorgestern vorhanden sind (Bei meinen Seiten mit mehr als 2000 Besuchern täglich wäre das ein Choas)