Ergebnis 1 bis 10 von 19

Thema: Reloads löschen sich nicht aus der DB :( VMS 1.2

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Avatar von didith1207
    Registriert seit
    17.09.2006
    Beiträge
    1.580

    Reloads löschen sich nicht aus der DB :( VMS 1.2

    Hallo ich habe das VMS 1.2

    ich habe mal meine Loseseite genauer unter die lupe genommen und festgestellt das in der datenbank unter *vms_reloads* über 400k abgelaufene reloads drinnen stehen die schon minimum 1 monat abgelaufen sind manche davon sogar 3 monate
    Zeige Datensätze 487930 - 487948

    Wo kann das problem liegen löschen die sich nicht automatisch?

  2. #2
    Erfahrener Benutzer
    Registriert seit
    17.08.2006
    Beiträge
    573
    es gab mal ein cron hier... war aber für´s vms1.1

    PHP-Code:
    <?
    $timel = time() - 172800;
    @require_once ('../lib/functions.lib.php');
    db_connect();
    db_query("DELETE FROM `vms_reloads` WHERE `bis` <='".$timel."'");
    db_close();
    echo'VMS_Reloads erfolgreich optimiert';
    ?>


    weiß nicht wie es für´s vms 1.2 lauten müßte...

  3. #3
    Erfahrener Benutzer Avatar von didith1207
    Registriert seit
    17.09.2006
    Beiträge
    1.580
    Vielen dank! ich habs nun so gelöst :

    ich hab mir einen cron fürs VMS 1.2 erstellt mit dem namen reloadcron.php:

    PHP-Code:
    <?
    $timel = time() - 172800;
    db_query("DELETE FROM `vms_reloads` WHERE `bis` <='".$timel."'");
    echo'VMS_Reloads erfolgreich optimiert';
    ?>
    dann habe ich für die db den cron eingefügt :
    INSERT INTO `vms_crons` VALUES ('','ext_reloadcron', 0, 'crons/reloadcron.php', 'Reloads Loeschen');

    Beim abrufen ( dauerte einige sekunden da er ja über 400k einträge löschen mußte) bekam ich folgende meldung :

    VMS_Reloads erfolgreich optimiertCron gelaufen

    und siehe da in der DB wurden alle einträge in vms_reloads die länger als 48h abgelaufen waren gelöscht

    Kann ich das so lassen? ist das eine feine lösung?

  4. #4
    Erfahrener Benutzer Avatar von Gremlin
    Registriert seit
    05.07.2006
    Beiträge
    5.206
    Eleganter wäre es nur die wirklich abgelaufenen Reloads zu löschen da manche auch ggf. länger als 48 Stunden sind.

    PHP-Code:
    <?php
    db_query
    ('DELETE FROM '.$db_prefix.'_reloads WHERE bis <= '.time().'') or die('Löschen fehlgeschlagen '.mysql_error());
    db_query('OPTIMIZE NO_WRITE_TO_BINLOG TABLE '.$db_prefix.'_reloads') or die('Optimierung fehlgeschlagen '.mysql_error());
    ?>
    Ausserdem: time() ist kein String sondern ein Integer deshalb sind die doppelten Anführungszeichen falsch.

    Ausserdem statt db_query(""); einfach db_query(''); nutzen dann muss php nicht nochmal den kompletten SQL Befehl parsen, beschleunigt das ganze auch nochmal minimal :smilewinkgrin:

    Da beim Reloads löschen viele Datensätze gelöscht werden sollte die Tabelle danach optimiert werden

    Gruß
    Gremlin
    Diskutiere nie mit Idioten - sie holen Dich auf ihr Niveau und schlagen Dich dort mit Erfahrung!



  5. #5
    Erfahrener Benutzer Avatar von didith1207
    Registriert seit
    17.09.2006
    Beiträge
    1.580
    aja vielen dank

  6. #6
    Erfahrener Benutzer Avatar von SebbyPHM
    Registriert seit
    17.07.2006
    Beiträge
    844
    Zitat Zitat von Gremlin Beitrag anzeigen
    Eleganter wäre es nur die wirklich abgelaufenen Reloads zu löschen da manche auch ggf. länger als 48 Stunden sind.

    PHP-Code:
    <?php
    db_query
    ('DELETE FROM '.$db_prefix.'_reloads WHERE bis <= '.time().'') or die('Löschen fehlgeschlagen '.mysql_error());
    db_query('OPTIMIZE NO_WRITE_TO_BINLOG TABLE '.$db_prefix.'_reloads') or die('Optimierung fehlgeschlagen '.mysql_error());
    ?>
    Ausserdem: time() ist kein String sondern ein Integer deshalb sind die doppelten Anführungszeichen falsch.

    Ausserdem statt db_query(""); einfach db_query(''); nutzen dann muss php nicht nochmal den kompletten SQL Befehl parsen, beschleunigt das ganze auch nochmal minimal :smilewinkgrin:

    Da beim Reloads löschen viele Datensätze gelöscht werden sollte die Tabelle danach optimiert werden

    Gruß
    Gremlin
    fängst ja so langsam an, wie manchmal ich zu klingen :eek6:
    Mit freundlichem Gruß
    SebbyPHM




  7. #7
    Erfahrener Benutzer Avatar von Gremlin
    Registriert seit
    05.07.2006
    Beiträge
    5.206
    fängst ja so langsam an, wie manchmal ich zu klingen :eek6:
    Ja klar *grins* soll ja immerhin ordentlich werden.
    Diskutiere nie mit Idioten - sie holen Dich auf ihr Niveau und schlagen Dich dort mit Erfahrung!



  8. #8
    Erfahrener Benutzer
    Registriert seit
    08.07.2007
    Beiträge
    179
    hi kann man das auch mit anderen daten machen

    meine mails haben ne eignene vms tabelle

  9. #9
    Erfahrener Benutzer Avatar von didith1207
    Registriert seit
    17.09.2006
    Beiträge
    1.580
    ja da hab ich dann noch das für mails hinzugefügt :

    PHP-Code:
    db_query("DELETE FROM ".$db_prefix."_reloads_mail WHERE `bis` <= '".time()."'"); 

  10. #10
    Erfahrener Benutzer Avatar von Tommyzero
    Registriert seit
    18.04.2008
    Beiträge
    173
    Hab alles hier ausgetestet trotzdem haben ich immer wieder banner die noch im reload sind hab das vms 1.2.2

Ähnliche Themen

  1. Account löschen geht nicht
    Von Rallef im Forum Support zum VMSone
    Antworten: 15
    Letzter Beitrag: 12.10.2010, 16:23
  2. Mysql eintrag lässt sich nicht löschen ?
    Von Kraemer84 im Forum Support zum VMSone
    Antworten: 3
    Letzter Beitrag: 20.05.2010, 14:39
  3. JP erhöht sich nicht
    Von word10 im Forum Support zu Addons & Erweiterungen
    Antworten: 3
    Letzter Beitrag: 07.12.2008, 14:07
  4. Antworten: 12
    Letzter Beitrag: 14.05.2008, 21:49
  5. hat sich erledigt ... bidde löschen!
    Von sebolus im Forum Sonstiges
    Antworten: 0
    Letzter Beitrag: 20.01.2008, 18:42

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •