Thumbnail erzeugen, script macht nicht alle

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

  • Thumbnail erzeugen, script macht nicht alle

    Hi Gemeinde,

    ich weiß nicht genau, nach was ich suchen soll; ich beschreib mal mein Problem. Ich haben ca. 50 Artikel deren Bild auf der HP als Thumb dargestellt werden soll. Und zwar alle untereinander. Das Thumb berechne ich mit einer PHP-Funktion.
    HTML-Code:
    <img src="_php/getResizedImage.php?lange_seite=40&im_path=<?php echo $DR.$ML_BILDER.$arr_bilder[0]; ?>" border="0" width="40" />
    PHP-Code:
    <?php
        
    if (isset($_GET['im_path'])) $im_path=$_GET['im_path'];
        else die;
        if (isset(
    $_GET['lange_seite'])) $lange_seite=$_GET['lange_seite'];
        else 
    $lange_seite=250;

        
    $old_jpg=imagecreatefromjpeg($im_path);
        
    $size=getimagesize($im_path);
        
    $size[0]>$size[1]?$faktor=$size[0]/$lange_seite:$faktor=$size[1]/$lange_seite;
        if (
    $size[0]>$size[1]) 
        {
            
    $n_width=$lange_seite;
            
    $n_height=$size[1]/$faktor;
        }
        else
        {
            
    $n_height=$lange_seite;
            
    $n_width=$size[0]/$faktor;
        }
        
    $jpg imagecreatetruecolor($n_width,$n_height);
        
    imagecopyresampled($jpg,$old_jpg,0,0,0,0,$n_width,$n_height,$size[0],$size[1]);

        
    header("Content-Type: image/jpeg");
        
    ImageJpeg($jpg);
        
    ImageDestroy($jpg);
    ?>
    Das klappt eigentlich super, ABER es werden NIE alle Thumbs in der Seite dargesetllt. Bei jedem Reload fehlen andere. Manchmal mehr manchmal weniger.
    Ich weiß gar nicht, wo ich das Problem anpacken soll, es kommt jedenfalls keine Fehlermeldung.

    Danke für jeden Tip.
    Gruß
    Michael
    Zuletzt geändert von Lengen1971; 29.07.2009, 14:52.

  • #2
    Hallo Michael,

    ohne mir das jetzt genauer angeschaut zu haben, folgender Vorschlag:

    Schau mal im generierten HTML-Code nach, ob die entsprechenden img-Elemente zu den fehlenden Bildern da sind. Wenn ja, ruf deren src-Attribut mal von Hand im Browser auf und drücke ggf. Strg+F5. Wenn sie dann erscheinen, solltest du deinen Cache mal leeren und evtl. auch den dafür erlaubten Speicherplatz raufsetzen.

    Edit: Arbeitest du mit display_errors oder log_errors? Im ersteren Falle könnte es auch sein, dass dir PHP eine Fehlermeldung ins Bild schreibt und du es deswegen nicht siehst.

    Gruß,

    Anja
    Zuletzt geändert von AmicaNoctis; 29.07.2009, 15:10.
    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
    Super, danke!
    [/COLOR]

    Kommentar


    • #3
      Hallo Anja,

      danke für die schnelle Antwort. Ich hab gerade festgestellt, dass das nur im FF auftritt. Am IE und Safari werden alle Thumbs berechnet und angezeigt. Das verwirrt mich jetzt.

      zu deinen Fragen:

      - ja, die img-Tags sind alle da im Code.
      - Cache ist komplett deaktiviert (könnte das das Problem sein?)
      - folgendes steht noch in der Datei:
      PHP-Code:
      set_time_limit(0);
      error_reporting(E_ALL); 
      danke
      Gruß
      Michel

      Kommentar


      • #4
        Aktivier mal bitte den Cache (10MB sollte reichen) und probier dann nochmal. Wenn es dann immer noch nicht geht, sehen wir weiter. Ich vermute schon, dass es daran liegt.

        Dann noch ein Tip: um deinen Server zu entlasten, empfiehlt es sich, die erzeugten Thumbnails zu speichern und nur dann neue zu erzeugen, wenn kein gespeichertes gefunden wurde oder die filemtime des Originals größer ist als die des Thumbs (auf Deutsch: wenn die Originaldatei geändert wurde).
        [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
        Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
        Super, danke!
        [/COLOR]

        Kommentar


        • #5
          Zitat von Lengen1971 Beitrag anzeigen
          - folgendes steht noch in der Datei:
          PHP-Code:
          set_time_limit(0);
          error_reporting(E_ALL); 
          Bekommst du aber trotzdem nichts von zu sehen, wenn du die Bilder per IMG in einem HTML-Dokument einbindest - wenn PHP dann Fehlermeldungen raushaut, bekommst du vom Browser nur ein [X] für ein "broken image" angezeigt.

          Am besten wäre das ganze nachvollziehbar, wenn du in der Konfiguration mittels log_errors und error_log mal dafür sorgst, dass Fehlermeldungen in eine Log-Datei geschrieben werden, und dann da nach einem Aufruf der Seite und fertig laden dieser dann mal reinschaust, was da drin steht.
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            Dass log_errors zweifellos die bessere Variante ist, steht außer Frage, aber wenn die Bilder in anderen Browsern dargestellt werden, kann das nicht der Grund sein.
            [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
            Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
            Super, danke!
            [/COLOR]

            Kommentar

            Lädt...
            X