Einfache Möglichkeit von Stunden auf h,m,s

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

  • #16
    ich würde null minuten nur wegersetzen, wenn auch die stunden weg sind.
    sonst siehts ja blöd aus.

    PHP-Code:
    <?php
      $sql 
    "SELECT TIME_FORMAT(SEC_TO_TIME((sum(online)/".$ghits.")),'%k h %i m %s s'), ROUND(AVG(mp),2) FROM ".$tbl_logs;
      
    $res mysql_query($sql);
      
    $vbonline mysql_result($res ,0);
      if (
    strstr("0 h"$vbonline)) {
        
    $vbonline str_replace("0 h """$vbonline);
        if (
    strstr("0 m"$vbonline)) {
          
    $vbonline str_replace("0 m """$vbonline);
        }
      }
      echo 
    $vbonline;
    ?>
    hättest du aber selber drau kommen können.

    wir können ja nicht alles vorsagen ...
    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


    • #17
      Sorry, klar soll mir hier nichts vorgesagt werde,
      aber so habe ich es auch schon ausprobiert,
      aber es hatte nicht geklappt, denn ich bekomme dann
      gar keine Anzeige.

      Ich dachte nur da gibt es einen Trick,
      den ich nicht kenne.

      Gruß Manuela

      Kommentar


      • #18
        hatte nur parameter bei strstr() vertauscht. hättest du auch finden können ...

        PHP-Code:
        <?php
          $sql 
        "SELECT TIME_FORMAT(SEC_TO_TIME((sum(online)/".$ghits.")),'%k h %i m %s s'), ROUND(AVG(mp),2) FROM ".$tbl_logs;
          
        $res mysql_query($sql);
          
        $vbonline mysql_result($res ,0);
          if (
        strstr($vbonline,"0 h")) {
            
        $vbonline str_replace("0 h """$vbonline);
            if (
        strstr($vbonline"0 m")) {
              
        $vbonline str_replace("0 m """$vbonline);
            }
          }
          echo 
        $vbonline;
        ?>
        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


        • #19
          Dann bekomme ich die Sekunden mit 207 s angezeigt !

          Ich glaube ich lasse es - trotzdem danke !

          Gruß Manuela

          Kommentar


          • #20
            Hallo,

            Schön das es geklappt hat

            Ich würde bei dem Ergebniss erst abfragen ob 0 Stundne und 0 Minuten vorligen, wenn das der Fall ist, dann einfach den String entsprechend ersetzten so das nur die Sekunden angezeigt werden.

            Wenn Stunde und Minute nicht 0 sind, dann abfragen ob Stunden 0 sind und den String entsprechend nur mit Minuten und Sekunden ausgeben.

            So ist sichergestellt, dass beo 0 h, 20 m, 36 s nicht 236s angezeigt werden.

            Hoffe Du kannst mir folgen

            Gruß
            GameShot

            Kommentar


            • #21
              Danke - ich muß es versuchen,
              denn das einzige was ich hasse sind diese Schleifen,
              denn da blicke ich nie durch.

              Gruß Manuela

              Kommentar


              • #22
                Hallo,

                So schwer sind schleifen nicht!

                Ich habe da mal was ausprobiert:

                PHP-Code:
                $vbonline="0 h ,10 m ,09 s";
                if (
                strstr($vbonline,"0 h ,0 m ,"))
                {
                    
                $vbonline str_replace("0 h ,0 m ,"""$vbonline);
                }
                elseif (
                strstr($vbonline,"0 h ,"))
                {
                    
                $vbonline str_replace("0 h ,"""$vbonline);
                }

                echo 
                $vbonline
                Du musst es eventuell an den genauen String anpassen der von mySQL geliefert wird, dann sollte es gehen.


                Gruß
                GameShot

                Kommentar


                • #23
                  D A N K E, jedoch habe ich nun das Problem,
                  daß wenn eine Stunde angezeigt wird, bzw.
                  vorhanden ist diese nicht angezeigt wird,
                  sondern auf die Minuten aufgerechnet werden.

                  Statt '860 h ,37 m ,01 s' ------> '8637 m ,01 s'

                  Gruß und nochmals danke Manuela

                  Kommentar


                  • #24
                    stimmt. bei 840 h ist das '0 h' ja enthalten.
                    mache das mas so.

                    statt
                    strstr($vbonline,"0 h ,0 m ,")

                    nimm
                    ereg("^0 h ,0 m ,", $vbonline)

                    da hättest du aber auch drauf kommen MÜSSEN.
                    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

                    Lädt...
                    X