Stunden und Minuten addieren?

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

  • Stunden und Minuten addieren?

    Einen wunderschönen guten Morgen!

    Hab gerade folgendes Problem:
    In der Tabelle einer Datenbank gibt es u.a. zwei Spalten...eine die "hours" heißt und eine, die "minutes" heißt, beide vom Typ Integer(11).

    Jetzt möchte ich aber aus diesen Angaben eine "Gesamtzeit" errechnen.
    Hab es schon probiert indem ich eine dritte Spalte eingefügt habe, in die das entsprechende timestamp eingfügt wird. Wenn ich diese allerdings addieren, addiert der auch nicht richtig!

    Bin für jede Hilfe sehr dankbar...bin im Moment sehr ratlos!!
    THX!

    YOURS ANDY

  • #2
    hours*60+minutes ?!?
    die hummel ist ein sinnloses tier ohne zukunft!

    Kommentar


    • #3
      Ja im Grunde ja schon...aber:

      Wenn ich z.B. folgendes habe->

      HOURS: 5 und 6
      MINUTES: 30 und 45

      liefert das als Ergebnis 12,25 Stunden!

      Wie komm ich jetzt dazu, dass der aus den 12,25h sowas macht wie 12:15???

      Schon mal danke für deine Hilfe!

      Kommentar


      • #4
        oh no, das ist Mathe in ... hm... ich Ausländer, ich nicht in Deutschland zur Schule ging, ich nicht weiss welche Klasse ... aber ziemlich früh schon bestimmt

        12,25 : vor dem Komma sind Stunden, nach dem Komma mal 60 = Minute

        Hm... Programmieren und keine mathematischen Grundlagen ist ziemlich tödlich, meinst du nicht ?

        Kommentar


        • #5
          alle stunden zusammenzählen. dann alle minuten zusammenzählen. dann volle stunden bei den minuten abziehen und bei den stunden aufaddieren. fertig.
          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


          Kommentar


          • #6
            @ asp2php
            Also in Mathe hab ich schon aufgepasst...
            aber was hilft mir Mathe bei dem Thema? Das 12,25 eine Zeitangabe ist, ist mir auch klar!
            Aber es bring mir nichts 12,25 als GEsamtzeit auszugeben! Da soll eben nicht 12,25 stehen, sonder äquivalent dazu 12:15 (12,25Stunden = 12h:15m)

            @ Abraxax
            Hmm...hab noch nicht so richtig verstanden was du von mir willst

            Kommentar


            • #7
              Original geschrieben von Lancer20
              @ asp2php
              Also in Mathe hab ich schon aufgepasst...
              aber was hilft mir Mathe bei dem Thema? Das 12,25 eine Zeitangabe ist, ist mir auch klar!
              Aber es bring mir nichts 12,25 als GEsamtzeit auszugeben! Da soll eben nicht 12,25 stehen, sonder äquivalent dazu 12:15 (12,25Stunden = 12h:15m)
              wie du aus 12,25 12:15 machst weiss du ja schon
              also formatiert die Ausgabe danach, wo liegt denn das Problem

              BTW: zeige mal, was du bisher diesbezüglich versucht hast, oder sollen wir dir den Code eintippen

              Kommentar


              • #8
                Also bisher dachte ich eher an sowas:

                PHP-Code:
                $query "SELECT sum(concat(hours,'',minutes)) 
                                 FROM pjx_timesheet 
                                WHERE pjx_projectsid = 
                $id";

                $dur $dbpjx->getID($query);

                $time strtotime($dur);

                $duration date("H:i",$time); 
                Aber das läuft ja nun nicht gerade !

                Kommentar


                • #9
                  was asp2php dir sagen wollte war:

                  nehme die variable in der 12,25 steht und trenne beim komma
                  => 12 und 0,25

                  0,25 * 60 (minuten) = 15

                  => 12,25h entspricht 12 stunden und 15 minuten

                  jetzt klar?
                  Ich denke, also bin ich. - Einige sind trotzdem...

                  Kommentar


                  • #10
                    Hey...

                    hab das jetzt so gelöst:

                    PHP-Code:
                    $query "SELECT sum(hours), sum(minutes) 
                                     FROM pjx_timesheet 
                                    WHERE pjx_projectsid = 
                    $id";

                    $dur $dbpjx->getArray($query);
                    $arg $dur[0][1];
                    $arg1 $arg 60;
                    $divide explode(".",$arg1);

                    If (
                    $divide[1] >= 10) {
                               
                    $minutes $divide[1] / 100 60;
                            }
                    ELSE {
                               
                    $minutes $divide[1] / 10 60;
                             }

                    $hour $dur[0][0] + $divide[0];

                    $dura = array("hour" => $hour"minutes" => $minutes);
                    $duration implode(":",$dura); 
                    Noch ma danke für eure Hilfe!

                    YOURS ANDY

                    Kommentar

                    Lädt...
                    X