Speicher überschritten?"size of 16777216 bytes exhausted"

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

  • Speicher überschritten?"size of 16777216 bytes exhausted"

    So,
    bin dabei eine Galerie zu erstellen. Klappt alles wunderbar, bis ich eine bestimmte Datei, die via. upload script hochgeladen wurde in ein Thumbnail wandel.
    Bei allen Bild Dateien hat das bis jetzt geklappt. Eben aber hatte ich eine Datei mit nur ca. 230kb , jedoch einer Bildgröße von 2646px * 3742px (sehr ungewöhnlich kleine Größe trotz sehr guter Bild Qualität)

    Das Hochladen dieser Datei funktioniert, beim Erstellen der Thumnail wird jedoch folgende Fehlermeldung ausgegeben:

    "Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 10584 bytes) in G:\server\xampplite\htdocs\galerie\includes\upload.inc.php on line 5"


    Meine Frage: WIESO bekomme ich diesen Fehler, obwohl die Datei doch nur 230 kb hat ???


    Scriptauszug von upload.inc.php:
    PHP-Code:




     $Img 
    imageCreateFromJPEG($imagefile);

     
    $nBreite 100 ;
     
    $nHöhe 75;
                                 
    $Out imageCreateTrueColor($nBreite$nHöhe); 
    imageCopyResampled($Out$Img0000$nBreite$nHöhe$oBreite$oHöhe);

    imageJPEG($Out$thumbfile); 

  • #2
    Konvertiere die Datei mal in Bitmap (mit Photoshop oder so) und schau dir dann die Größe an. Ahnst du was?
    Ja richtig, es hat was mit dem Format zu tun. Genauer gesagt mit dem Kompressionsverfahren.
    Und wenn du mit PHP Thumbnails erstellen willst, packt PHP das komprimierte Bild erstmal aus, um an die einzelnen Pixel zu kommen. Ergo wird aus einer 230kB Datei etwas viel größeres. Man kann das sogar ungefähr ausrechen: Auflösung mal Farbtiefe.

    Kommentar


    • #3
      Hast du mir denn dann vielleicht ein Tipp, wie ich die Datei via. Php kleiner bekomme ? Oder geht das dann nur, durch manuelles Komprimieren der DAtei ?

      Kommentar


      • #4
        Entweder das Speicherlimit anpassen mit ini_set('memory_limit', '...M') oder das Bild mit ImageMagick per Shellkommando 'convert' verkleinern.

        Kommentar

        Lädt...
        X