Zeitberechnung....

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

  • Zeitberechnung....

    Ich habe in meiner db eine spalte wo ich die zeit des eintrags eingetragen habe, und nach ablauf meiner festgelegten frist (z.B. 4 Wochen), wird dann der jeweilige eintrag gelöscht.
    Nun möchte ich aber, das man sieht wann die 4 wochen um sind.

    Nun sieht der eintrag so aus: 20050319003209

    Bekomme das aber nicht hin, das er mir die zeit in 4 wochen anzeigt.
    Muß ich jetzt extra eine spalte anlegen, wo ich gleich beim eintrag die 4 wochen dazu gebe?
    Oder weiß jemand, wie ich die 4 wochen, zu der zeit des eintrages dazu gebe?
    Gut geraten ist halb gewußt.

  • #2
    PHP Code:
    SELECT FROM tabelle 
    WHERE UNIX_TIMESTAMP
    (20050319003209) < UNIX_TIMESTAMP()-2419200 
    so?
    (-:
    Bookmarks:·Bilder·Jobs·Recht·
    kostenloser Webkataloge-Assistent

    Comment


    • #3
      Nicht wirklich.
      Das ist meine Zeitangabe. 20050319003209
      Und ich kann frage dann ab,
      PHP Code:
      $altesdatum date("YmdHis", (time() - 86400*30)); 
      Da wo älter ist, soll er es löschen.
      Das haut alles hin.
      Wollte nur wissen, ob es geht, wenn ich die alte zeit 20050319003209
      aus der db hole, das ich 4 wochen wieder mit php dazu geben kann?

      Will dem benutzer nur zeigen.
      Ihr Eintrag ist noch bis (monat) (Tag) online.
      Gut geraten ist halb gewußt.

      Comment


      • #4
        86400*30 != 4 Wochen
        Mach das doch direkt per SQL:
        PHP Code:
        SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(20040601152643)+86400*30
        Last edited by kill_bill; 20-03-2005, 11:53.
        (-:
        Bookmarks:·Bilder·Jobs·Recht·
        kostenloser Webkataloge-Assistent

        Comment


        • #5
          Kenn mich nicht so perfekt mit sql aus.
          PHP Code:
              $id  ent($_SESSION['id']); 
              
          $sql "SELECT  
                           id,
                           kunde,
                           datum     
                      FROM
                          HAUPTDB
                      WHERE
                          kunde = '
          $id' AND p_h = 'p'   
                      LIMIT
                          1"
          ;
              
          $db_daten = @mysql_query($sql) OR die("Bitte entschuldigen Sie die Störung.");   # mysql_error()
              
          $row   = @mysql_fetch_array($db_daten,MYSQL_ASSOC); 
          Ich müßte ja denn deine abfrage hinter WHERE eingeben oder wie?
          Aber denn geht das doch nicht, oder?
          Gut geraten ist halb gewußt.

          Comment


          • #6
            Original geschrieben von martinm79
            Ich müßte ja denn deine abfrage hinter WHERE eingeben oder wie?
            Nein, Du sagst ja, Du löschst die älteren Einträge eh.

            PHP Code:
                   $sql "SELECT  
                             id,
                             kunde,
                             datum,
                             FROM_UNIXTIME(UNIX_TIMESTAMP(datum)+86400*30) AS verfallsdatum    
                        FROM
                            HAUPTDB
                        WHERE
                            kunde = '
            $id' AND p_h = 'p'   
                        LIMIT
                            1"

            sollte funktionieren, wobei verfallsdatum dann dein Datum + 30 Tage ist.
            Last edited by kill_bill; 20-03-2005, 12:20.
            (-:
            Bookmarks:·Bilder·Jobs·Recht·
            kostenloser Webkataloge-Assistent

            Comment


            • #7
              Danke.
              Ich glaube ich sollte mir mal ein sql Handbuch besorgen.

              FROM_UNIXTIME(UNIX_TIMESTAMP(datum)+86400*30) AS verfallsdatum
              Wußte ja nicht wie ich es einsetzen sollte. Mit datum, greife ich auf die Spalte zu?
              Danke für den Tip, hatte bisher meist nur mit normalen abfragen zu tun.
              Gut geraten ist halb gewußt.

              Comment

              Working...
              X