Geckodeep schrieb:
> Thanks Goetz
>
> But how can I apply this having:
>
> Path to the folder is $folder='images/repor_images'; // path to the
> image.
>
> My 9image variables are $image1, $image2, $image3,. and the code to call the
> image
>
> <?php print "<img alt='$title' border=0 width= '103' heigth = '70'
> src=\"$folder/$image1\">" ?>
>
> Thanks again.
I should do coding the whole page I gues ;-)
First of all some things to mention about:
1. Better store only filenames in the database and leave
the images in the directory, cause you have to copy then
to a location anyway to get it by an browser
2. Use an array of $image[] instead of numbering them
like $image1, $image2, ... (you have to use eval to
work with the numbers or have to write the code more
than once !)
Ok here it goes:
<?php
// guess you have JPEG images
// --------------
$nr = 1; // start numbering your images
$maxsize = 150; // maximum size in one direction
// ---------------
while($nr <= 9) {
$img = @imagecreatefromjpeg ("$folder/$image[$nr]"); // try to open
if (!$im) {
echo "ERROR loading image $folder/$image[$nr] ";
exit 1;
} else {
$imagehw = GetImageSize($img);
$w = $imagehw; // width
$h = $imagehw; // height
// prevent division by zero
if (($h ==0) || ($w==0)) exit;
// get new size according to max size
if ($h>$w) {
$new_h = $maxsize; // new height
$new_w = (int) (($maxsize * $w) / $h); // casting to int !
} else {
$new_w = $maxsize; // new width
$new_h = (int) (($maxsize * $h) / $w); // casting to int !
}
// build dummy image
$thumb = imagecreate ($new_w, $new_h);
// resize old image
ImageCopyResized($thumb,$img,0,0,0,0,$new_w,$new_h,$w,$h);
// maybe use tempname() to generate a temporary file name or
// create name of thumbnail file like: *.jpg ==> *.png
$tumbnail=substr($image[$nr],0,strrpos($image[$nr],".")).".png";
// save png image to same directory as jpg
@imagepng ($thumb,"$folder/$tumbnail"); // hope we could write
// leave the temporary data ...
ImageDestroy($img);
ImageDestroy($thumb);
// finished work
// -------------------
// show image
echo "<img alt=\"$title\" border=\"0\" width=\"$new_w\" ".
"heigth=\"$new_h\" src=\"$folder/$tumbnail\" >";
}
$nr++; // next image
}
?>
maybe there might better ways but thats just a fast hack to work ...
--
@ Goetz Lohmann, Germany | Web-Developer & Sys-Admin
\/ ------------------------------------------------------
() He's the fellow that people wonder what he does and
|| why the company needs him, until he goes on vacation.
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php