hi,
ich hab folgendes problem, und zwar hab ich eine schleife die einen ordner ausliest und den inhalt in form von namen ausgibt(es sind nur bilder drinne d.h. er gibt unter der varibale $file immer den namen aus zb. test1.jpg,test2.jpg.
jetzt habe ich eine funktion die thumbnails erstellt und wenn man sie ausserhalb der schleife aufruft funtkioniert sie und erstelt ein thumb on the fly.
vielleicht könnt ihr mir helfen ich weis nicht mehr weiter
hier erstma der code wie es geht:
Code:
$img_src = "./bilder/big/florida.jpg";
$img_width ="150";
$img_height ="150";
$im = ImageCreateFromJPEG($img_src);
list($src_width, $src_height) = getimagesize($img_src);
if($src_width >= $src_height) {
$new_image_width = $img_width;
$new_image_height = $src_height * $img_width / $src_width;
}
if($src_width < $src_height) {
$new_image_height = $img_width;
$new_image_width = $src_width * $img_height / $src_height;
}
$new_image = ImageCreateTrueColor($new_image_width, $new_image_height);
ImageCopyResampled($new_image, $im, 0, 0, 0, 0, $new_image_width,$new_image_height, $src_width, $src_height);
ImageJPEG($new_image);
und hier wie es nicht mehr geht:
Zitat:
function list_pic($dir){
$dir = opendir($dir);
while (false !== ($file = readdir ($dir)))
{
$ext = substr($file,strlen($file)-3, 4); ## UMSTÄNDLICH NOCH ALPHA MUSS VERBESSERT WERDEN
if($ext == jpg){
$img_src = "./bilder/big/$file";
$img_width = "150";
$img_height = "150";
$im = ImageCreateFromJPEG($img_src);
list($src_width, $src_height) = getimagesize($img_src);
if($src_width >= $src_height) {
$new_image_width = $img_width;
$new_image_height = $src_height * $img_width / $src_width;
}
if($src_width < $src_height) {
$new_image_height = $img_width;
$new_image_width = $src_width * $img_height / $src_height;
}
$new_image = ImageCreateTrueColor($new_image_width, $new_image_height);
ImageCopyResampled($new_image, $im, 0, 0, 0, 0, $new_image_width,$new_image_height, $src_width, $src_height);
ImageJPEG($new_image);
}
}
closedir($dir);
}
mfg tim