ilch Forum » Allgemein » HTML, PHP, SQL,... » MySql Tabelle automatisch löschen

Geschlossen
  1. #1
    User Pic
    gerdi Mitglied
    Registriert seit
    19.04.2008
    Beiträge
    66
    Beitragswertungen
    1 Beitragspunkte
    Hallo Leute,

    ich habe mal wieder eine Frage und ich hoffe Ihr könnt mir da helfen.

    Also ich habe schon vor einiger Zeit den IP-Logger von Hassman geladen und installiert.

    Weil die Tabelle in der Datenbank aber nach einiger Zeit richtig groß wird und ich nicht immer daran denke die log-Datei oder Tabelle zu leeren, habe ich gedacht das man das vielleicht automatisieren könnte.

    Also mit Cronjob zum Beispiel.

    Das alle Einträge die älter sind als 7 Tage gelöscht werden.

    Gibt es da eine Möglichkeit.

    Danke schon mal

    Gerdi

    PS: Ich hoffe das Thema noch nicht besprochen wurde. Wenn doch wäre ich für einen Link Dankbar.

    betroffene Homepage: zwickau4ever.de
    externer Link
    +++Der Gamer FunClan+++
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    gerdi Mitglied
    Registriert seit
    19.04.2008
    Beiträge
    66
    Beitragswertungen
    1 Beitragspunkte
    Sorry aber ich habe gerade gesehen das der Titel falsch ist.

    Es soll natürlich LEEREN heißen und nicht löschen.

    Sorry
    externer Link
    +++Der Gamer FunClan+++
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    GeCk0 Hall Of Fame
    Registriert seit
    01.05.2009
    Beiträge
    2.989
    Beitragswertungen
    96 Beitragspunkte
    SuFu verwenden
    externer Link

    aber hier, bitte schön:

    in phpmyadmin ausführen:
    DROP TABLE IF EXISTS `ic1_iplogger2`;
    CREATE TABLE IF NOT EXISTS `ic1_iplogger2` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `tstamp` int(20) NOT NULL,
      `ip` varchar(250) NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='IP Logger von GeCk0 überarbeitet';


    php-datei überschreiben
    <?php
        $ip = $_SERVER['REMOTE_ADDR'];  
        $datum = date("Y.m.d");
        $zeit = date("h:i:s");
        $user = $_SESSION['authname'];
        $wo = "http://".$_SERVER["HTTP_HOST"].$_SERVER["REQUEST_URI"];
        $dada = $_SERVER["REQUEST_URI"];
        $tstamp = time();
       
       
    $text  = "<b>USER</b> - $user = $ip am $datum um $zeit auf $dada";
     
    db_query  ("INSERT INTO `prefix_iplogger2`
    (`tstamp`, `ip`) VALUES
    ('".$tstamp."', '".$text."')");
     
     
    $logday = 2; # Wie alt (in TAGEN dürfen die Logs sein ?
    $day = 86400; # Sekunden hat ein Tag
    $getsec = $day * $logday; # x Tage * Sekunden = Sekunden für x Tage ^^
    $gettime = $tstamp - $getsec; #aktuellen timestamp - getsec = alte einträge
     
    $ylogs = $count - $xlogs; #gezählte id`s - logs die bleiben sollen
    db_query("DELETE FROM `prefix_iplogger2` WHERE tstamp < '".$gettime."'");
     
     
    ?>



    Zuletzt modifiziert von GeCk0 am 16.10.2009 - 17:26:41
    Alle Module von mir sind nun unter php-gecko.de erreichbar
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    gerdi Mitglied
    Registriert seit
    19.04.2008
    Beiträge
    66
    Beitragswertungen
    1 Beitragspunkte
    Oh mein Gott ging das schnell.

    Danke
    externer Link
    +++Der Gamer FunClan+++
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu HTML, PHP, SQL,...

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten