Ankündigung

Einklappen
Keine Ankündigung bisher.

Countdown auf einem Bild ausweisen

Einklappen

Neue Werbung 2019

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

  • Countdown auf einem Bild ausweisen

    Hallo,

    ich würde gerne einen Countdown über ein Bild legen und bin dabei so weit gekommen:

    PHP-Code:
    <?php  
    function Countdown($Datum)  
    {  
        
    $Zieldatum mktime(substr($Datum112),  
                            
    substr($Datum142),  
                            
    substr($Datum172),  
                            
    substr($Datum32),  
                            
    substr($Datum02),  
                            
    substr($Datum64), -1); 
                             
        
    $Differenz $Zieldatum-time();  

        
    $Tage floor($Differenz/86400);  
        
    $Rest $Differenz-($Tage*86400);  
        
    $Stunden floor($Rest/3600);  
        
    $Rest $Rest-($Stunden*3600);  
        
    $Minuten floor($Rest/60);  
        
    $Rest $Rest-($Minuten*60);  

        
    $Zeit "$Tage Tage und $Stunden Stunden  ";  

        return 
    $Zeit;  
    }  

    $datum "04.05.2008 11:00:00";  
    $text Countdown($Datum); 

    $text urlencode($text); 

    echo 
    "<img src='counter.php?text=$text' alt='Logo mit Counter'>\n";  
    ?>
    PHP-Code:
    <?php  
      $text 
    = (isset($_GET['text'])) ? urldecode($_GET['text']) : ""
      
      
    $image imagecreatefromjpeg("images/Logo4.jpg" );   
       
      
    $font $_SERVER['DOCUMENT_ROOT'] . 'fonts/Underwood.TTF'
       
      
    $font_c imagecolorallocate $image2550);  

      
    imagettftext ($image25015098$font_c$font$text);  

      
    header ('Content-type: image/jpeg' );  

      
    imagejpeg($image); 

      
    imagedestroy($image);   
    ?>
    Leider wird der Countdown völlig falsch gezählt. Siehe Beispiel hier.
    Ich habe 04.05.2008 als Zieldatum eingestellt und es kommen - Tage heraus.

    Desweiteren bekomme ich es nicht hin, dass mein Logo auf die komplette Breite der Tabelle "gestreckt" wird. Wo muss ich "width" ansetzen ?
    Frank

    Infos rund um die USA und vieles mehr unter [URL="http://www.frankgayer.com"]www.frankgayer.com[/URL]

  • #2
    Hallo,

    hat hier niemand eine Idee ? Wenigstens einen Ansatz ?
    Frank

    Infos rund um die USA und vieles mehr unter [URL="http://www.frankgayer.com"]www.frankgayer.com[/URL]

    Kommentar


    • #3
      ich find den parameter den du bei countdown schon übergibst der macht die funktion unnötig kompliziert, das macht auch das debuggen bzw die fehlersuche schwierig is klar das der fehler irgendwo in der countdown funktion liegt, ich würd dir nur empfehlen für jede zeiteinheit einen parameter der funktion zu übergeben

      function countdown($d,$m,$y,$h,$i,$s)
      is nurn vorschlag so richtig kontrollieren wollt ich die funktion auch nicht :P
      sorry aber ich hoffe ich konnt dir wenigestens nen bisschen helfen

      Kommentar


      • #4
        Hallo erstmal,

        natürlich hilft mir jede Antwort weiter als gar keine. Wo hast Du diesen Script in meinem Post gefunden ?
        Frank

        Infos rund um die USA und vieles mehr unter [URL="http://www.frankgayer.com"]www.frankgayer.com[/URL]

        Kommentar


        • #5
          hmm du hast einfach nur $datum falsch übergeben. ... ich hab mir das mal angeguckt

          richtige version
          PHP-Code:
           <?php   
          function Countdown($Datum)   
          {   
              
          $Zieldatum mktime(substr($Datum112),   
                                  
          substr($Datum142),   
                                  
          substr($Datum172),   
                                  
          substr($Datum32),   
                                  
          substr($Datum02),   
                                  
          substr($Datum64), -1);  
                                    
              
          $Differenz $Zieldatum-time();   

              
          $Tage floor($Differenz/86400);   
              
          $Rest $Differenz-($Tage*86400);   
              
          $Stunden floor($Rest/3600);   
              
          $Rest $Rest-($Stunden*3600);   
              
          $Minuten floor($Rest/60);   
              
          $Rest $Rest-($Minuten*60);   

              
          $Zeit "$Tage Tage und $Stunden Stunden  ";   

              return 
          $Zeit;   
          }   

          $Datum "04.05.2008 11:00:00";   // du hattest da vorher $datum stehen
          $text Countdown($Datum);  

          $text urlencode($text);  

          echo 
          "<img src='counter.php?text=$text' alt='Logo mit Counter'>\n";   
          ?>

          solltest dir vll bei variablen angewöhnen klein loszuschreiben $datumVonHeute oder $alsIchImUrlaub war oder sowas das ist eigentlich immer ne recht einfache methode auch die richtigen variablen zu verwenden

          Kommentar


          • #6
            In der Tat. Die Kleinigkeiten haben es in sich.

            Wie kann ich jetzt noch einen Text zu der Auswertung dazu bekommen, als Bsp.

            Countdown bis zum nächsten Event in .... Tagen. Das .... stellt dann die Auswertung aus dem Script dar.
            Frank

            Infos rund um die USA und vieles mehr unter [URL="http://www.frankgayer.com"]www.frankgayer.com[/URL]

            Kommentar


            • #7
              imagedestroy($image);
              wenn du das sofort danach machst ist das img ja nicht mehr im ram dann kanns ja auch nicht mehr angezeigt werden oder liege ich da falsch ?

              Kommentar


              • #8
                ... und was hat das mit dem Text jetzt zu tun ? Ich will eben, dass die Anzahl Tage nicht alleine dastehen sondern ich dazu noch ein Ereignis schreiben kann
                Frank

                Infos rund um die USA und vieles mehr unter [URL="http://www.frankgayer.com"]www.frankgayer.com[/URL]

                Kommentar


                • #9
                  asooo
                  mach doch einfach

                  echo "<img src='counter.php?text=$text&event='.urlencode("Eve nt sowieso").'' alt='Logo mit Counter'>\n";

                  $text = urldecode($_GET['event']);
                  imagettftext ($image, 25, 0, 150, 98, $font_c, $font, $text);

                  array imagettftext ( resource $im , int $size , int $angle , int $x , int $y , int $col , string $fontfile , string $text )
                  also musst du nur noch x und y anpassen das der event auch da steht wo du ihn haben willst.

                  Kommentar

                  Lädt...
                  X