datum restzeit berechnen ?

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

  • datum restzeit berechnen ?

    Hallo !

    kleines Problem !
    Ich habe eine mysql table in der in einen feld ein datum steht wann es eingetragen wurde um aber die restzeit auszurechnen wie lange es noch gültig ist müsste ich vom heutigen datum 30 tage retourrechnen was ja auch funktioniert nur wie kann ich dann die diferrenz ausrechnen so das dann einfach 2 Tage oder so raus kommt ?

    PHP Code:
    $expire=60*60*24*30;
    $datum date ("Y-m-d"time ()-$expire);
    $restzeit=$row->datum $datum;
    echo 
    $restzeit
    mfg.
    erti

  • #2
    1. Ist irgendwie umständlich über unix_timestamps zu arbeiten ... mit mysql date funktionen würdest du vielleicht besser fahren.

    2. Du subtrahierste 2 Variablen vom Typ 'String'. Denke nicht, dass da ein gescheites Ergebnis rauskommt. Benutze strtotime() oder die mysql Funktionen zur timestamp Konvertierung um die Datumsangeben in int Werten anzuzeigen und sie dann zu subtrahieren. Wie gesagt - irgendwie umständlich, also verweise ich mal auf meinen ersten Punkt...[/PHP]
    Last edited by ZombieChe; 04-06-2007, 09:48.

    Comment


    • #3
      PHP Code:
      $datum strtotime('now - 30 days');
      $restzeit $row->datum $datum;
      echo 
      date('z',$restzeit); 
      So in der Art vllt ?

      Gruss

      tobi
      Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

      [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
      Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

      Comment


      • #4
        Ich habe das so gelöst.

        $heute = time();
        $morgen = $heute + 86400;
        $gestern = $heute - 86400;
        $vor30tagen = $heute - (86400 x 30);

        86400 entspricht in time() genau einem Tag oder 24 Stunden oder 1440 Minuten oder eben 86400 Sekunden ;-).

        Comment


        • #5
          Das sture Abziehen von 86400 Sekunden pro Tag wird dir aber spätestens dann Probleme machen, wenn über die Sommer/Winterzeitumstellung gegangen wird. Dann dürften solche Zeitstempel +-1h falsch sein.

          Gruss

          tobi

          86400 entspricht in time() genau einem Tag oder 24 Stunden oder 1440 Minuten oder eben 86400 Sekunden ;-).
          Nicht ganz korrekt. Ist dir bewusst, dass ab und an sogar Schaltsekunden dazukommen
          Schaltsekunde
          Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

          [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
          Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

          Comment


          • #6
            Das mit der Schaltsekunde war mir in der Tat nicht bekannt.

            Abgefahren. *Wer hat an der Uhr gedreht ...* :-D

            Das mit der Zeitumstellung könnte man mit einer Datumsabfrage und einer Anpassung + bzw - 1 Stunde im entsprechenden Zeitraum ausgleichen ... Muss man aber nicht wenns anderst auch einfacher geht

            Comment

            Working...
            X