Moin Moin,
hab ein kleines Problem das ich mir selbst zur Zeit nicht beantworten kann. Ich habe mir eine kleine Bildbearbeitungsklasse geschrieben. Hauptaufgabe ist, eine Grafikdatei in Größe und Format beliebig zu verändern.
Soweit dazu. Ich habe ein Upload-Form womit man Bilder hochladen kann. Sobald das Bild ordnungsgemäß oben ist wird die Bildbearbeitungsklasse aufgerufen. Zuerst
prüft die einige Dinge ab (ist zu öffnende Datei vorhanden, handelt es sich um eine Grafikdatei, wird gif, jpeg und png unterstützt etc). Danach wird der Verarbeitungsprozess aufgerufen.
per
Code:
// read original picture
switch($this->TYPE)
{
case 'gif':
$IMAGE_SOURCE = ImagecreateFromGif($this->FILE);
break;
case 'jpeg':
$IMAGE_SOURCE = ImagecreateFromJpeg($this->FILE);
break;
case 'png':
$IMAGE_SOURCE = ImagecreateFromPng($this->FILE);
break;
}
Komischerweise ist nach dem Aufruf ImageCreateFromPng (ist ein PNG Bild mein Problem) schluß. Keine Fehlermeldung, gar nix.
Per
Code:
...
case 'png':
echo "test";
exit;
$IMAGE_SOURCE = ImagecreateFromPng($this->FILE);
break;
kann ich mir noch anzeigen lassen das die Routine aufgerufen wird. Wenn ich das "exit" nicht schreiben würde, würde gar keine Ausgabe kommen. Packe ich das echo+exit nach $IMAGE_SOURCE, dann habe ich auch keine Ausgabe. Also muß definitiv mit dem Aufruf IMAGECREATEFROMPNG schluß sein. Leider erhalte ich keine Fehlermeldung
Lokal funktioniert die schose bei mir. Auf dem Server läuft PHP 4.3.10 komplett mit GD2 und allen unterstützten Format. memory_limit ist auf 8 MB. Die Problemdatei ist 1,42 MB groß. Mache ich sie um ca. 200 kb kleiner funktioniert die ganze Sache. Wo könnte das Problem liegen?