ich bin zur Zeit dran mir ein Fotoablum zu Coden.
Dabei möchte ich auch Thumbnails erstellen da ich nicht jedesmal die großen Dateien mitschicken will. Ist denek ich mal verständlich, die Grafiken sidn ja teilweise über 1,5MB groß.
Nun habe ich mir da ein PHP-Script ausgedacht.
Das Problem ist aber dass die erstellte Thumbnail-Grafik Schwarz bleibt.
- Code: Select all
$bilder_query = mysql_query("SELECT * FROM ".MYSQL_TABLE_BILDER." WHERE id = '{$_GET['img_id']}'");
$bilder = mysql_fetch_array($bilder_query);
$file_name = "file_tmp/{$bilder['film_name']}_large_{$bilder['filename']}";
header("Content-type: {$bilder['mime']}");
header("Content-Disposition: attachment; filename={$bilder['film_name']}_{$bilder['filename']}");
$tmp_file = fopen($file_name,'w+b');
fwrite ($tmp_file,$bilder['img_file']);
fclose($tmp_file);
chmod($file_name,0777);
$img_size = getimagesize($file_name);
imagecopyresized(
imagejpeg(imagecreate(bcdiv($img_size[0],16),bcdiv($img_size[1],16))), #Ziel-Bild (Direckte Ausgabe an den Browser)
$file_name, #Quell-Bild
0, #Start (X) im Ziel-Bild
0, #Start (Y) im Ziel-Bild
0, #Start (X) im Quell-Bild
0, #Start (Y) im Quell-Bild
bcdiv($img_size[0],16), #Breite im Ziel-Bild
bcdiv($img_size[1],16), #Höhe im Ziel-Bild
$img_size[0], #Breite im Quell-Bild
$img_size[1] #Höhe im Quell-Bild
);
Die Temporäre Grafik wird Ordnungsgemäß mit den Daten aus der Datenbank im richtigen Verzeichniss erstellt.
Zum "Debuggen" habe ich grundsätzlich in jeder Datei ganz am Anfang "error_reporting(E_ALL);" stehen.
Meldungen, egal welcher art, werden keine Ausgegeben.
Bitte teilt mir mit wo ich da einen Fehler/etwas vergessen/übersehen habe. Vielleicht sehe ich ja vor lauter Bäumen den Wald nicht.
Ist auch das erste mal dass ich mit der GD-Bibliothek arbeite.
Habe das aktuelle XAMPP für Linux auf einer Suse 9.1 Maschine am laufen.
Danke schin mal im vorraus.
Kai aka Knight1