Ankündigung

Einklappen
Keine Ankündigung bisher.

imagecreatefromjpeg error

Einklappen

Neue Werbung 2019

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

  • imagecreatefromjpeg error

    Hallo zusammen,

    nach langer Suche im Web, habe ich leider immer noch keine Lösung gefunden. Ich habe eine php Datei zum verkleinern mehrere Bilder angelegt. Dies funktioiert auch wunderbar. Nur bei zu großen Dateien bricht ja bekanntlich der Befehl: imagecreatefromjpeg ab, jedoch ohne irgend eine Meldung oder sonst was. Das Skript bleibt einfach in der Zeile hängen.

    Gibt es eine Möglichkeit, zu überprüfen ob imagecreatefromjpeg abgelaufen ist oder nicht?

    Das hier habe ich schon getestet, jedoch hat das auch kein Ergebniss gebracht: PHP: imagecreatefromjpeg - Manual


    Danke, George

  • #2
    keiner eine Idee?

    Kommentar


    • #3
      hast du ne Glasskugel für mich?

      Kommentar


      • #4
        Vielleicht mal Zeit messen?

        oder vielleicht mal das versuchen:
        PHP-Code:
        set_max_execution_time); 

        Kommentar


        • #5
          Error_reporting gesetzt ?
          display_errors auf On ?

          Dann sollte im Falle eines fehlers eigentlich auch eine Ausgabe kommen

          Kommentar


          • #6
            Im Fehlerfall gibt ImageCreateFromJPEG() eine leere Zeichenkette zurück. Zudem wird eine Fehlermeldung erzeugt, die im Browser als Verbindungsabbruch dargestellt wird.

            Aber wie kann ich das weiter nutzen?

            Kommentar


            • #7
              stand auch dabei.

              PHP-Code:
              function LoadJpeg ($imgname) {
                  
              $im = @ImageCreateFromJPEG ($imgname); /* Versuch, Datei zu öffnen */
                  
              if (!$im) {                            /* Prüfen, ob fehlgeschlagen */
                      
              $im ImageCreate (15030);       /* Erzeugen eines leeren Bildes */
                      
              $bgc ImageColorAllocate ($im255255255);
                      
              $tc  ImageColorAllocate ($im000);
                      
              ImageFilledRectangle ($im0015030$bgc); 
                      
              /* Ausgabe einer Fehlermeldung */
                      
              ImageString($im155"Fehler beim Öffnen von: $imgname"$tc); 
                  }
                  return 
              $im;

              Kommentar


              • #8
                hab ich schon ausprobiert, aber hat nicht funktioniert

                Kommentar


                • #9
                  Zeig mal bitte etwas Quellcode, damit man sehen kann was du eigentlich machst.

                  Kommentar


                  • #10
                    PHP-Code:

                    function Thumb($sourcefile$targetfile$maxWidth$maxHeight$PicInfo) {
                       if(
                    $maxWidth && $maxHeight){
                           if (
                    $PicInfo[0] > $PicInfo[1]) {  // maximale Abmessungen errechnen
                              
                    $new_width $maxWidth;
                              
                    $new_height floor(($new_width $PicInfo[1]) / $PicInfo[0]);
                           } else {
                              
                    $new_height $maxHeight;
                              
                    $new_width floor(($new_height $PicInfo[0]) / $PicInfo[1]);
                           }
                       }else{
                               if(
                    $maxWidth){
                                
                    //BILD WIRD AUF BREITE BEGRENZT
                                
                    $new_width $maxWidth;
                                
                    $new_height floor(($new_width $PicInfo[1]) / $PicInfo[0]);
                               }else{
                                
                    //BILD WIRD AUF HÖHE BEGRENZT
                                
                    $new_height $maxHeight;
                                
                    $new_width floor(($new_height $PicInfo[0]) / $PicInfo[1]);
                               }
                       }
                       
                       
                       
                    //echo "$PicInfo[0]/$PicInfo[1]";
                       //echo "//$new_width - $new_height//<br>";
                       
                       
                    $PicData ImageCreateFromJPEG($sourcefile);
                       
                    $PicDataResized imagecreatetruecolor($new_width$new_height);
                       
                    imagecopyresampled($PicDataResized$PicData0000$new_width$new_height$PicInfo[0], $PicInfo[1]);

                       
                    touch($targetfile);
                       
                    ImageJPEG($PicDataResized$targetfile65);
                       
                    // header("Content-Type: image/jpg"); //Header manipulieren
                       //imagejpeg($PicDataResized); //Bild ausgeben
                       
                        
                    imagedestroy($PicDataResized);
                        
                    imagedestroy($PicData);

                    so, das ist der Code. Und bei "ImageCreateFromJPEG" hakt es bei größeren dateien

                    Kommentar


                    • #11
                      hallo zusammen,

                      hat keiner mehr eine Idee?

                      Danke, george

                      Kommentar

                      Lädt...
                      X