$neueBreite=40;
$neueHoehe=intval($hoehe*$neueBreite/$breite);
$altesBild=ImageCreateFromJPEG(„$tempbild“);
$neuesBild=ImageCreate($neueBreite,$neueHoehe);
ImageCopyResized($neuesBild,$altesBild,0,0,0,0,$neueBreite,$neueHoehe,$breite,$hoehe);
ImageJPEG($neuesBild,„thumb“.„$tempbild“);
[/code]Den Code hab ich mir jetzt aus den Internet geholt und funkt auch … allerdings nur wenn das Bild im selben Verzeichnis liegt. Wie funktioniert dass allerdings wenn das Bild zum Beispiel im Untergeordneten Verzeichnis liegen würde?
Vermutlich liegt es daran, dass Du das neue Bild nicht mit der imagecreatetruecolor()-Funktion erstellst. Hier mal eine Funktion, die bei mir läuft.
[php]
function bild_thumbn($val1, $val2) {
// $val1 = Name (incl. Pfad) des neuen Bildes
// $val2 = Name (incl. Pfad) des hochgeladenen Bildes
$info = getimagesize($val2);
$breite=$info[0];
$hoehe=$info[1];
if ($breite > $hoehe) {
$breite_neu=100;
$hoehe_neu=$hoehe*($breite_neu/$breite);
}
else {
$hoehe_neu = 75;
$breite_neu = $breite * ($hoehe_neu / $hoehe);
}
$bild_res = imagecreatetruecolor($breite_neu, $hoehe_neu);
$bild_res2 = imagecreatefromjpeg($val2);
imagecopyresampled($bild_res, $bild_res2, 0, 0, 0, 0, $breite_neu, $hoehe_neu, $breite, $hoehe);
imagejpeg($bild_res, $val1);
}[/php]