Marc Reichelt: Frage zu ImageMagick

Beitrag lesen

Hallo Markus,

$convert = $PfadConvert." -geometry 100x48 ".$ThumbDatei;
    exec($convert);

Deine Quelldatei fehlt im obigen Code.
Meines Wissens nach müsste folgender Code ausreichen:

$convert = "convert $BildDatei -resize 100x48 $ThumbDatei";
exec($convert);

Allerdings werden die Bilder so auf maximal 100 Pixel Breite und maximal 48 Pixel Höhe skaliert, du scheinst sie aber ausschließlich maximal 48 Pixel hoch zu haben wollen, und dazu brauchst du folgenden Code:

$convert = "convert $BildDatei -resize x48 $ThumbDatei";
exec($convert);

Falls es so nicht klappt, sollte es mit "/usr/bin/convert" statt "convert" funktionieren.
Ich denke irgendwie, dass dein Code aber trotzdem nicht funktionieren wird, denn die exec()-Funktion ist im PHP Safe Mode deaktiviert und dementsprechend wirst du keine externen Programme wie z.B. convert aufrufen können. Du kannst es ja aber trotzdem mal probieren, mich würde es wundern wenn es bei den Standard-Paketen von 1und1 funktioniert.

Ach ja: Und pass bitte auf, dass du die Variablen $BildDatei und $ThumbDatei selbst erstellst oder falls du sie vom Benutzer überliefert bekommst entsprechend überprüfst - denn über exec()-Aufrufe haben sich schon viele PHP-Programmierer eine Hintertür ins eigene System gesprengt.

Bis dann!

Marc Reichelt || http://www.marcreichelt.de/

--
Linux is like a wigwam - no windows, no gates and an Apache inside!
Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)
http://emmanuel.dammerer.at/selfcode.html