Einfügen einer weiteren Bedingung in einen Zeit-Ticker

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

  • Einfügen einer weiteren Bedingung in einen Zeit-Ticker

    Hallo und guten Morgen!

    Vielleicht kann mir hier jemand helfen, bitte? Ich bastle an einem Schwangerschafts-Ticker-Script herum und habe folgendes Problem:

    Das Schwangerschaftsalter wird in vollständigen Wochen plus zusätzliche Tage berechnet. Bin ich also mitten in der 7. Woche, heißt das z.B. "Woche 6+4". Der erste Tag der 8. Woche wäre demnach "Woche 7+0", denn sieben Wochen sind komplett vergangen und die achte hat vor weniger als einem Tag erst angefangen.

    Dies versuche ich nun derzeit in einem Script umzusetzen:

    Code:
    $con_time_cal = ((mktime (0, 0, 0, $con_month, $con_day, $con_year) - time(void))/86400);
    $con_time_cal = (int)ceil($con_time_cal);
    $conweeks= (((($con_time_cal)/7)*-1)-1);   [COLOR=crimson]// hier liegt wohl das Problem[/COLOR] 
    $conweeks= (int)ceil($conweeks);
    $condays= ((($con_time_cal)%7)*-1);
    $condays= (int)ceil($condays);
    $conplus= ('+');
    Das Problem ist nur, daß die Berechnung nur so lange das korrekte Ergebnis liefert, wie hinter den kompletten Wochen noch mindestens ein zusätzlicher Tag genannt wird. Funktioniert also nur bei Woche 6+1 bis Woche 6+6. Will ich aber z.B. Woche 7+0 anzeigen, wird durch das "-1" daraus leider 6+0, also eine Woche zu wenig.

    Wie bekomme ich es nun hin, daß wenn con_time_cal eine glatte Woche ohne zusätzliche Tage ergibt, trotz des "-1" der korrekte Wert angezeigt wird? Ganz weglassen kann ich das "-1" ja auch nicht, denn dann stimmen die Werte für die übrigen Tage der Schwangerschaftswoche ja nicht mehr.

    Vielen Dank für's Durchlesen und für alle evtl. Lösungsvorschläge.

    Ute

  • #2
    Re: Einfügen einer weiteren Bedingung in einen Zeit-Ticker

    Noch viel komplizierter als in deinem Code kann ich es mir kaum vorstellen.


    Wenn du die Anzahl Tage hast, warum benutzt du dann nicht einfach Division und Modulo ...?
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      @Wahsaga: Weil ich - wie mein Username schon sagt - leider erstens Autodidakt und zweitens blutiger PHP-Anfänger bin. *g*

      Ich war schon heilfroh, daß es überhaupt funktioniert hat, denn zu allem Überfluß wird der Kram hinterher noch in ein .png verwandelt: http://www.ute-gerhardt.de/ticker.php

      Kommentar


      • #4
        Tja, nun habe ich es mit einer Division ausprobiert und bekomme zwar einen korrekten Absolutwert, jedoch leider mit negativem Vorzeichen bei den Wochenangaben.

        Mit *-1 wird daraus dann zwar wieder eine positive Wochenzahl, aber sobald ich nicht mehr bei Woche 7+0", sondern z.B. bei "Woche 7+1" angelangt bin, wird eine Woche zu viel draufgerechnet und stattdessen 8+1 angezeigt. Das gleiche passiert, wenn ich ein reines "(abs($con_time_cal)/7)" benutze.

        Sorry, aber jetzt bin ich komplett ratlos.

        Kommentar


        • #5
          Original geschrieben von CluelessNewbie
          Tja, nun habe ich es mit einer Division ausprobiert
          Und wie?
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            OK, inzwischen habe ich den ganzen Kram ziemlich vergewaltigt... Jedenfalls funktioniert es nun, mit

            Code:
            $conweeks= (($con_time_cal)/7);
            $conweeks= (int)ceil($conweeks);
            $conweeksreal = (($conweeks)*-1);
            
            ...
            
            $line1 = "SSW  $conweeksreal+$condays";
            Keine Ahnung, warum mit einer zusätzlichen Variablen alle Werte korrekt berechnet werden und das richtige Vorzeichen haben, während es nicht funktioniert, wenn ich *-1 direkt in $conweeks einfüge. Aber wie dem auch sei, für meine Zwecke wird's erstmal reichen. Ich muß wohl noch 'ne Menge lernen.

            Vielen Dank nochmal für die Hilfestellung.

            Kommentar


            • #7
              Sorry, Doppelposting.

              Kommentar

              Lädt...
              X