2 Daten subtrahieren.. wie?

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

  • 2 Daten subtrahieren.. wie?

    Hallo allerseits,
    ich versuche nun schon seit einer Weile 2 Daten zu subtrahieren. Leider ohne Erfolg.
    Ich habe ein Datum, welches eingetragen wird, sobald ein Artikel freigeschalten wird. Zudem wird in ein anderes Feld ein Datum, welches 2 Monat mehr hat eingetragen. Dieses möchte ich mit dem jetzigen subtrahieren:

    Mein Script sieht so aus:

    PHP-Code:
    $datumjetzt mktime(000date("m"), date("d"), date("Y"));
        while( 
    $row mysql_fetch_array($res))
        {
            
    $id $row['ID'];
            
    $empf $row['Mail'];
            echo 
    $row['Titel'].'&nbsp;&nbsp;&nbsp;&nbsp;'.$row['Mail'].'&nbsp;&nbsp;&nbsp;&nbsp;'.$row['Datum_Frei'].'&nbsp;&nbsp;&nbsp;&nbsp;'.$row['Datum_Ende'].'<br /><br />';
            
    $datum_end_tmp substr($row['Datum_Ende'], 0,10);
            
    $arr_datum explode("-",$datum_end_tmp); // Teil in Array packen 
            
    $datum_end mktime(000$arr_datum[1], $arr_datum[2], $arr_datum[0]);
            
    $diff2 bcdivbcdivbcdiv$erg60 ), 60 ), 24); // Es werden einfach die Nachkommastellen weggelassen
            
    echo '<br />'.date("d"$diff2); 
    So klappt es, aber wenn ich zu $datum jetzt 2 Monate addiere, also:

    PHP-Code:
    $datumjetzt mktime(000date("m")+2date("d"), date("Y")); 
    Dann sind die Tage nicht 61, wie sie sein sollten (Datum_Ende ist immer 2 Monat mehr als das eingetragene Datum), sondern 91. Wieso dies ?
    Kann mir jemand weiterhelfen ?

  • #2
    hmm,

    hast du mal die datums-funktionen von mysql benutzt? die daten kommen doch aus der db? damit sollte das wesentlich einfacher machbar sein ...
    Die Zeit hat ihre Kinder längst gefressen

    Kommentar


    • #3
      sollte wesentlich einfacher sein, es direkt in der Abfrage zumachen z.B. :
      DATE_ADD(deindatefeld, INTERVAL 2 MONTH)
      [Test] MySQL cli Emulator

      Kommentar


      • #4
        Hallo, vielen Dank für eure Antworten.
        Ich habe es nun mit MySQL benutzt, doch etwas scheine ich noch falsch zu machen.

        PHP-Code:
        SELECT Beitrag.Datum_Ende Now() AS datum 
        Beitrag.Datum_Ende ist in meinem Beispiel 2004-11-16 15:44:02.
        Wie kann ich nun die Variable so formatieren, dass ich Tage erhalte ?
        Momentan erhalte ich den Wert 199069999. Sind dies Sekunden ?

        Gruss und Danke

        Kommentar


        • #5
          so sollte es auch gehen, ansonsten such doch einfach mal nach den MySQL Datumsfunktionen, zur Formatierung kann man z.B. DATE_FORMAT() nutzen
          [Test] MySQL cli Emulator

          Kommentar

          Lädt...
          X