Ankündigung

Einklappen
Keine Ankündigung bisher.

Paar Probleme bei Auktionsscript

Einklappen

Neue Werbung 2019

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

  • #46
    PHP-Code:
    <?php
    function get_timespan($c)
    {
      
    $seconds $c 60;
      
    $c -= $seconds;
      
    $minutes $c 3600;
      
    $c -= $minutes;
      
    $hours $c 86400;
      
    $c -= $hours;
      
      return array(
        
    'days'=>$c/86400,
        
    'hours'=>$hours/3600,
        
    'minutes'=>$minutes/60,
        
    'seconds'=>$seconds
      
    );
    }

    $e strtotime('+11 seconds');
    print_r(get_timespan($e-time()));

    $e strtotime('+17 minutes 11 seconds');
    print_r(get_timespan($e-time()));

    $e strtotime('33 hours 17 minutes 11 seconds');
    print_r(get_timespan($e-time()));

    $e strtotime('+1 week 33 hours 17 minutes 11 seconds');
    print_r(get_timespan($e-time()));
    ?>

    Kommentar


    • #47
      du ziehst also von den 71 gesamtstunden mal schnell 172800 ab? na das muss ja dann wohl negativ werden

      du darfst von den gesamtstunden natürlich nur die stunden der 2 tage abziehen (in deinem fall 2 tage * 24 std = 48 abziehen) oder allgemein gültig

      PHP-Code:
          $days floor($dauer 24 60 60 );
          
      $std floor($dauer - ($days 24) / 3600); 

      Kommentar


      • #48
        Zitat von keinplanvonnix Beitrag anzeigen
        du ziehst also von den 71 gesamtstunden mal schnell 172800 ab? na das muss ja dann wohl negativ werden

        du darfst von den gesamtstunden natürlich nur die stunden der 2 tage abziehen (in deinem fall 2 tage * 24 std = 48 abziehen) oder allgemein gültig

        PHP-Code:
            $days floor($dauer 24 60 60 );
            
        $std floor($dauer - ($days 24) / 3600); 
        da kommt folgendes raus:
        Code:
        2 Tage 256981 Stunden -15414577 Minuten 2 Sekunden
        Bei mir:
        PHP-Code:
        <?php

        function convert_verbleibende_zeit($ablauf)
        {
            
        $dauer $ablauf time();
            
        $days floor($dauer 24 60 60 );
            
        $std floor($dauer 3600 $days 24); 
            
        $min floor(($dauer $std 3600)/60);
            
        $sek $dauer $std 3600 $min 60;  
            
            
        $ausgabe "$days Tage $std Stunden $min Minuten $sek Sekunden";
            return 
        $ausgabe;
        }    

        echo 
        convert_verbleibende_zeit(1210509957);

        ?>
        kommt das raus:
        Code:
        2 Tage 23 Stunden 2901 Minuten 52 Sekunden
        Also sind die Minuten falsch, aber warum?
        Danke

        Kommentar


        • #49
          OOops sorry, weil die Klammeer falsch ist aber das haste ja gefunden

          Du ziehst bei den Minuten zwar vorher die Stunden von der Dauer ab aber nicht die Stunden, die in $days stecken. Und wenn du das geändert hast wird es bei den Sekunden das gleiche Problem geben, da fehlen dann auch wieder die Minuten, die in den Tagen stecken.

          Kommentar


          • #50
            Versteh ich nicht ganz ^^, kannst du mir vll. ein Bsp. zeigen?
            Danke

            Kommentar


            • #51
              dein Code

              PHP-Code:
                  $dauer $ablauf time();
                  
              $days floor($dauer 24 60 60 );
                  
              $std floor($dauer 3600 $days 24); 
              // gesamtdauer - der minuten für die errechneten std
              // und damit sind hier die minuten, die in den 2 Tagen stecken zuviel
              // also 2 * 24 * 60 = 2880 Minuten zuviel     
              $min floor(($dauer $std 3600)/60); 
                  
              $sek $dauer $std 3600 $min 60
              oder vielleicht ist es so verständlicher wenn ich es ausführlicher schreibe

              PHP-Code:
                  $dauer $ablauf time();
                  
              $days floor($dauer 24 60 60 );
              $restdauer darauf kommst du selbst 
                  $std 
              floor($restdauer 3600);
              $restdauer = ..... 
                  
              $min floor(($restdauer /60); 
              $restdauer =
                  
              $sek $restdauer

              Kommentar


              • #52
                Ich weise nochmal dezent auf http://www.php.de/php-einsteiger/110....html#post7757 hin

                Kommentar

                Lädt...
                X