Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Löschen eines DB Satzes nach Datum/Uhrzeit

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Löschen eines DB Satzes nach Datum/Uhrzeit

    Hallo Leutz...

    Ich brauch Hilfe bei einem SQL String.

    Meine Tabelle sieht wie folgt aus:

    ID
    USER
    PASSWORD
    BANNED
    DATUM

    Das Prob liegt beim Datum. Ich schreibe es im Format
    yyyy-mm-dd hh:mm:ss in die DB. Wenn ein User gebannt worden ist, schreibt er das Datum in die Tabelle. Nun möchte ich, das

    der User (also der ganze DB-Satz) gelöscht wird, wenn das Bann-Datum älter als 24 Stunden ist.

    Kann mir da wer helfen?

    MfG
    Sabse

  • #2
    $sql = "DELTE FROM `table` WHERE `DATUM` < '".date('Y-m-d T', mktime() - (60 * 60 * 24))."';"

    Kommentar


    • #3
      Danke für die schnelle Antwort nur leider is da irgendwo nen Syntax Fehler und es liegt nicht am DELETE

      es funzt leider net.. *heul

      mysql_error(): supplied argument is not a valid MySQL-Link

      Kommentar


      • #4
        Re: Löschen eines DB Satzes nach Datum/Uhrzeit

        Zitat von Sabse1980
        Code:
        ID
        USER
        PASSWORD
        BANNED
        DATUM  <-- Welcher Spaltentyp?
        Ich schreibe es im Format yyyy-mm-dd hh:mm:ss in die DB. Wenn ein User gebannt worden ist, schreibt er das Datum in die Tabelle. Nun möchte ich, das
        der User (also der ganze DB-Satz) gelöscht wird, wenn das Bann-Datum älter als 24 Stunden ist.
        17.7. Wie lösche ich alle Datensätze, die älter als n Tage sind?
        http://www.dclp-faq.de/q/q-mysql-loeschen.html

        Beispiel anpassen, Du nicht Tage sondern Stunden berechnen willst.

        http://www.mysql.de/doc/de/Date_and_time_functions.html

        Kommentar


        • #5
          also ich würde das datum als timestamp in die db schreiben
          spaltentyp ist dann integer
          und guradias code kann nicht klappen denn er hat mktime() mit time() verwechselt, denn time() gibt den aktuellen unix timestamp zurück während man mit
          Code:
          mktime($hour,$min,$sec,$month,$day,$year)
          den timestamp eines beliebigen datum wiedergeben kann
          mktime erwartet also 6 parameter während time() keinen erwartet/benutzt

          Kommentar


          • #6
            Problem ist gelöst.. mit timestamp.... *g

            Kommentar

            Lädt...
            X