Artikel nach bestimmter Zeit löschen

alex130

Erfahrenes Mitglied
Hi
Ich hab wieder mal ein Problem :D
Und zwar mach ich gerade eine Seite, wo man Artikel eintragen kann und auswählen kann, ob der Artikel nach 15, 30 oder 45 Tagen gelöscht werden kann, dies wird dann in die Datenbank eingetragen, doch wie mach ich das, dass der Artikel dann auch gelöscht wird?
lg
 
Wow erstmal danke für die schnelle Antwort
Ich habe auch schon an Cronjobs gedacht, aber wie kann ich die automatisch erstellen? außerdem sind das zu viele, oder? denn wenn ich jetzt z.B. jeden Tag 30 neue Artikel habe....
 
ich würde die Aktuelle Uhrzeit nehmen. und dann diesen Stamp + (15 * 86400) bzw. 30 oder 45. Und dann irgendwo abfragen, wenn die aktuelle Zeit diesen Zeitpunkt übertrifft dann löschen.
 
Frage einfach bei jeder Anfrage eines Artikels ab, ob dieser noch existieren darf, ob der angegebene Zeitpunk also schon überschritten ist oder nicht. Ist das der Fall, lösche ihn.
 
Hi
stimmt so könnte ich es machen, aber wie mach ich das mit dem Datum genau? einfach wenn man nen Artikel einträgt, das heutige Datum + 15, 30 oder 45 Tage rechnen und dann in die DB schreiben? Und dann bei jedem Aufruf die löschen, deren löschdatum das heutige ist?
lg
 
Das hängt davon ab, in welchem Format dein Datum gespeichert ist.

Bei Unix Zeitstempeln kannst du mit Sekunden rechnen, bei dem DATETIME Format solltest du dir die Funktion DATEDIFF z. B. anschauen.
 
Das ist zum Teil auch eine Frage des Geschmacks. Ich persönlich arbeite lieber mit Timestamps, da man einfacher damit rechnen kann und PHP auch einen eleganteren Umgang hat.
Außerdem kann man direkte Vergleiche anstellen mit time() anstatt jedesmal ein Datum zu formatieren für den Zugriff bzw. die SQL Funktionen zu nutzen.

Letztlich ist es aber auch eine Frage der Anwendung, was mit dem Datum alles gemacht werden soll.
 
Zurück