Ankündigung

Einklappen
Keine Ankündigung bisher.

P-Chat atomatisch löschen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • P-Chat atomatisch löschen

    Hi
    Ich habe auf meiner seite eine Chat Funktion für die schoutbox da ich den chat immer über die DB löschen mußte habe ich mir eine Löschfunktion gebastelt

    1.P-Chat wird Manuell gelöscht per link
    2.P-Chat wird einmal inder woche automatisch gelöscht -24 h

    ich möschte aber das die Einträge alle 3Tage einmal gelöscht werden aber nur die älter sind als 1 tag

    PHP-Code:
    <?
    ob_start("xxxxxxxxxxr");

    require_once("include/xxxxxxxxxxx");
    hit_start();

    dbconn();
    if (get_user_class() <xxxxxxxxxxxxx) adddeniedlog();

    mysql_query("DELETE FROM pchat") or sqlerr();
    mysql_query("ALTER TABLE `shoutbox` AUTO_INCREMENT =1") or sqlerr();
    write_log("modmessages","Der P-Chat wurdw von ==> [". $CURUSER["username"] ."] geleert");

    $userid=0;
    $username=$CURUSER["username"];
    $date=time();
    $text= "[size=2][b][color=red]Der P-Chat Wurde soeben zwecks Wartung gelöscht von[/color][/b][/size][img]xxxxxxxxxxxxxxxx/pic/sauger.gif[/img][b][size=2][color=red]".$CURUSER ["username"]."[/color][/size][/b]";

    mysql_query("INSERT INTO shoutbox (id, userid, username, date, text) VALUES ('id'," . sqlesc($userid) . ", " . sqlesc("Info") . ", $date, " . sqlesc($text) . ")") or sqlerr(__FILE__, __LINE__);
    header("Location: $BASEURL/index.php");

    //P-Chat löscht alle Einträge automatisch die älter sind als 24 Stunden
    $toweek = date("Y-m-d", strtotime("-1 day"));

    mysql_query("DELETE FROM pchat WHERE date = '$toweek'") or die(mysql_error());
    mysql_query("ALTER TABLE `shoutbox` AUTO_INCREMENT =2") or sqlerr();

    $date=time();
    $text= "[size=2][b][color=red]Der P-Chat Wurde soeben zwecks Wartung gelöscht vom[/color][/b][/size][img]xxxxxxxxxxxxxxxxxx/pic/sauger.gif[/img][b][size=2][color=red]SYSTEM[/color][/size][/b]";

    hit_end();
    ?>
    villeicht hat eine ne idee


  • #2
    Entweder per Cronjob der alle 3 Tage läuft oder du musst mitspeichern wann du das letzte mal gelöscht hast und kannst dann schauen wann 3 Tage verstrichen sind.

    Kommentar


    • #3
      ei beispiel (denkanstoß) währe nicht schlecht

      Kommentar


      • #4
        Sorry, aber den Denkanstoß hast Du gerade bekommen. Wenn Du fertigen Code haben willst, warum sagst Du das nicht einfach?!
        --

        „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
        Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


        --

        Kommentar


        • #5
          1.) manuelles löschen ist Unsinn genauso wie ein Cronjob
          2.) das ständige Zurücksetzen von auto-increment ist unnötig
          3.) das ganze Script ist Unsinn

          Statt ein extra Script zu basteln solltest Du den Löschvorgang in das Script setzen, wo neue Einträge verarbeitet werden. D.h.:

          PHP-Code:
          if ($neuer_shout) {
            
          // lösch alles was älter ist als 24 stunden
            // neuen shout hinzufügen

          Wenn Du das nicht bei jedem neuem Shout machen lassen willst um z.B. Requests auf die DB zu sparen, kannst Du den Vorgang einfach per Zufall ausführen lassen:
          PHP-Code:
          if ($neuer_shout) {
            if (
          mt_rand(0100) == 100) {
              
          //lösch alles was älter ist als 24 stunden
            
          }
            
          // neuen shout hinzufügen

          D.h. bei jedem 100. neuen Shout (statistisch gesehen) wird die History gelöscht. Nix Cronjob und nix manuell machen. Fertig
          meine PHP Scripte

          Kommentar


          • #6
            [MOD: verschoben]
            --

            „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
            Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


            --

            Kommentar

            Lädt...
            X