1Stunde plus eine minus aber warum???

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

  • 1Stunde plus eine minus aber warum???

    Hi,

    ich habe mal wieder ein kleines Problem. Und zwar habe ich das untere script.... Was ich erreichen möchte ist folgendes,
    ich habe eine Wartung, die ist alle 18Monate($intervall). So nun läuft der Vertrag 60Monate in diesen 60 Monaten erfolgt die Wartung 3 mal.
    So nun muss ich erstmal Termine für diese 3 Wartungen finden.nun dauert diese Wartung 7Tage. Was ich nun möchte, ist die timestamp von den 7Tagen. So das funzt da unten auch schon ganz gut. Bis auf den kleinen Fehler, dass ich z.b. so was hier bekomme:

    [COLOR=red]1[/COLOR]:00:00 - 24.05.2005

    [COLOR=red]0[/COLOR]:00:00 - 15.11.2006

    [COLOR=red]1[/COLOR]:00:00 - 08.05.2008


    PHP-Code:
    // Berechnung der Termine
    $vertragsdauer=60// Monate
    $checkdauer 7// Tage
    $intervall 18// Monate
    $anzahlwartungen bcdiv($vertragsdauer,$intervall,0);
    $nächsteWartung $beginn;
    for(
    $count=0;$count $anzahlwartungen;$count++)
    {
        
    $nächsteWartung $nächsteWartung+60*60*24*30*$intervall);
        
    $currentdate $nächsteWartung;
        for(
    $i=0;$i 6;$i++)
        {
            
    $currentdate $currentdate+(60*60*24*1);
        }
    }
    // ENDE Berechnung der Termine 
    Ich finde aber den Fehler nicht....!

    Danke Marcus

  • #2
    sommer- / winzerzeit? such mal nach. ich hatte da mal probleme mit. vielleicht hilfts dir auch. hab damals ziemlich lang gesucht...

    Kommentar


    • #3
      hmm ich glaube nicht, dass es damit was zutun hat. Da ich ja in der Schleife durchgehe... Ich versteh es einfach nicht!

      Kommentar


      • #4
        Hi,
        da ich ungern mit subtraktion in dieser Form arbeite, habe ich dein Script ein wenig umgeschrieben. Vielleicht hilft es dir.
        Der kleine Fehler, der sich gestern nacht eingeschleust hat, ist nun behoben *fg*

        PHP-Code:
        $vertragsdauer 60;                                    // Monate
        $checkdauer 7;                                         // Tage
        $intervall 18;                                         // Monate
        $anzahlwartungen bcdiv($vertragsdauer,$intervall,0);     // Anzahl der Wartungen
        $nachsteWartung time();                                 // Vertragsanfang

        $wartung[tage] = $checkdauer;
        $wartung[monate] = $intervall;


        for(
        $i=0;$i<=$anzahlwartungen;$i++)                     // Schleife abh. von Wartungen
        {

            if (
        $i==0)                                          // Mathematik zur korrekten Dar-
                
        {                                               // stellung des Wartungsdatums
                
        $wartung[text] = "Beginn der Vertrages";        // Sinnloser Text
                
        $wartung[tage] = 0;                             // Deklaration der Var im Spezialfall
                
        }
                else
                {
                
        $wartung[text] = "$i. Wartung";                    // Sinnloser Text
                
        $wartung[tage]=$checkdauer;                     // Deklaration der Var im Normalfall
                
        }    
            
            
            
        $tstamp  mktime(date("h"), date("i"), date("s"), date("m")+$wartung[monate]*$idate("d")+$wartung[tage]*($i-1), date("Y"));
            
        $next date("H:i:s d.m.Y"$tstamp);                  // Formatiertes Datum
            
        print "<b>$wartung[text]$next</b><br>\n";         // Ausgabe des Datums + Text

        Zuletzt geändert von yozek; 11.04.2004, 15:42.

        Kommentar


        • #5
          date('m') für minuten und monate? Einmal i draus machen...

          Kommentar


          • #6
            Danke
            Peinlich, hab da ueberhaupt nicht drauf geachtet ....

            So funxt das Script einwandfrei (keine +/- 1 Stunde)

            Frohe Ostern noch

            Kommentar


            • #7

              Kommentar


              • #8
                Danke ich werde es gleich mal testen!!!

                Marcus

                Kommentar

                Lädt...
                X