DB Einträge die älter als 7 Tage sind löschen

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • DB Einträge die älter als 7 Tage sind löschen

    Hallo,
    ich speichere in einer DB die Seitenaufrufe meiner Webseite.
    PHP Code:
    INSERT INTO pcbs_log (iddatumzeitipagentrefererseite
    VALUES (NULL'$datum''$uhrzeit''$ip''$user_agent''$http_referer'
    '$request_uri')"; 
    Das Datum wird in der DB so geschrieben
    2007-08-29

    Jetzt möchte ich alle Einträge die älter als 7 Tage sind löschen.
    Kann mir jemand da weiterhelfen?

    Gruß Ingo

  • #2
    Wenn es ein Varchar-Feld ist, in das du das Datum speicherst, dann ist es eklig - ist auch einer der Gründe, warum man das nicht macht. Bleibt nur Zerhacken mit Stringfunktionen und manuell vergleichen.

    Wenn es hingegen ein Datumsfeld ist, dann kannst du natürlich die Datums-und Zeitfunktionen verwenden, z.b. DELETE ... WHERE DATE_ADD(datum, INTERVAL 7 DAY) < NOW() o.ä.
    ich glaube

    Comment


    • #3
      Hallo ministry,
      danke für die schnelle Antwort.
      Es ist ein Datumsfeld.

      Gruß Ingo

      Comment


      • #4
        ich würde einfach folgendes versuchen:

        PHP Code:

        $date 
        date("U");
        $datestamp date("Ymd",$date);
        $one_week=$datestamp-7;
        mysql_query("DELETE FROM tabelle WHERE datum < ".$one_week.""); 
        $datestamp hätte das Format 20070828.
        Ich weiß, dein Datumsfeld hat das falsche Format, aber vielleicht lohn sich ein Umstieg?
        Last edited by alex2iceman; 29-08-2007, 19:07.

        Comment


        • #5
          alex2iceman, völlig falsche antwort. s. ministry.

          Comment

          Working...
          X