Daten abhängig von Datum löschen

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17476
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Beitrag von Dr.Death »

ok.

Beispiel: ( Phantasie Zahlen )

Jetzt = 1234567890
Tage = 67890

Gelöscht soll alles werden was von jetzt an älter als 67890 Sekunden ist.

Lösche alles was < ( Jetzt - Tage ) ist --->
Lösche alles was < ( 1234567890 - 67890 ) ist ---->
Lösche alles was < 1234500000 ist

Einträge von Heute ( sagen wir mal von vor 890 Sekunden ) werden nicht betroffen da:
1234567000 ist nicht kleiner als 123450000

alles klar ?

/me hofft das er gerade nichts durcheinander gebracht hat ;-)
Benutzeravatar
TLoD
Mitglied
Beiträge: 161
Registriert: 04.08.2007 14:57
Wohnort: Nürnberg
Kontaktdaten:

Beitrag von TLoD »

jou jou mir ist das soweit alles klar nur bin ich gerade noch am rätseln ob denn das geht, wenn ich von ner DATETIME, sekunden abziehen will.

habe iwi so das gefühl dass das nicht geht und ich iwas mit strtotime machen muss.
LG Marc

Wir leben alle unter dem gleichen Himmel, aber wir haben nicht alle den gleichen Horizont.
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17476
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Beitrag von Dr.Death »

Ich weiss ja nicht wie der Datenbank Inhalt von Deinem Datumsfeld aussieht.

Das einfachste ist immer nur ein timestamp.
Dann braucht man nicht umrechnen... was Du nun glaube ich machen musst ...
Benutzeravatar
TLoD
Mitglied
Beiträge: 161
Registriert: 04.08.2007 14:57
Wohnort: Nürnberg
Kontaktdaten:

Beitrag von TLoD »

$datum = 2008-08-15 18:29:17

und davon wollt ich nun die jeweiligen zeiten abziehen und alles was dann jünger bzw gleich ist löschen.

aber ich werde wohl nicht von 2008-08-15 18:29:17 sekunden abziehen können.

in einer datei arbeite ich da immer mit strtotime aber das werde ich in einer where abfrage wohl nciht mehr können.

habt ihr da ne idee wie ich das ohne den inhalt von $datum zu ändern bewältigen kann ?
LG Marc

Wir leben alle unter dem gleichen Himmel, aber wir haben nicht alle den gleichen Horizont.
Benutzeravatar
TLoD
Mitglied
Beiträge: 161
Registriert: 04.08.2007 14:57
Wohnort: Nürnberg
Kontaktdaten:

Beitrag von TLoD »

So nu habe ich die Lösung meines Problems.
Hat zwar ewig gedauert, aber war doch mehr als nur einfach :D

Code: Alles auswählen

        if(isset($_POST['kommentareloeschen'])) {
        $datum = (time() - ($_POST['Tage']));
        $dates = (date("Y-m-d H:i:s",$datum));
	$sql = "DELETE FROM
                   ".COMMENTS."
                WHERE
                   Datum <= '".$dates."'";
        mysql_query($sql) OR die(mysql_error());
LG Marc

Wir leben alle unter dem gleichen Himmel, aber wir haben nicht alle den gleichen Horizont.
Antworten

Zurück zu „Coding & Technik“