Page 1 of 1
outputing dynamically created thumnail images to browsers
Posted: Mon Aug 04, 2003 3:23 pm
by kendall
Hello,
Im trying to create a image gallery that takes images from a directory by creating thumbnails on the fly.
my problem is having to display it in a bacth order using html when i cant cause i have to header()
im looking into the output buffering but it doesnt seem to explain much of its working in the docs.
i wanna be able to display the dyanimcally created thumbnails in table rows...can this be done? how?
Kendall
Posted: Mon Aug 04, 2003 6:06 pm
by RFairey
What needs to go in your header() that is so important?
What are you using to generate the thumbs? Are you using the GD libraries? (doing them on the fly is slow - as each new user causes the thumbnails to be resampled again. Better to generate them once with a script, then use them directly in the gallery.)
Echoing an html table is simple, once you've read in the files:
Code: Select all
<?php
function maketable ($thumb_dir,$img_dir,$width) {
// ***************************************
// *** Read in directory, create array ***
// *** of all jpgs and sort. ***
// ***************************************
if ($dir = @opendir($thumb_dir)) {
while (($file = readdir($dir)) !== false) {
if ($file !== "." && $file !== ".." && strrchr($file,'.')=='.jpg') {
$img_list[] = $file;
}
}
closedir($dir);
}
sort($img_list);
// *************************
// *** Start HTML output ***
// *************************
echo "<TABLE>";
for ($i=0; $i<count($img_list); $i++) {
//Paths to images
$thumb_url = $thumb_dir . $img_list[$i];
$img_name = str_replace("th","",$img_list[$i]);
$img_url = $img_dir . $img_name;
echo
"<td VALIGN=middle ALIGN=center><a href="$img_url">
<img src="$thumb_url" width="$size[0]"
height="$size[1]" border=0></a></td>\n";
//Wrap table at right no of columns
if (($i+1) % $width == 0 ) echo "</tr><tr>\n";
}
echo "</tr></table>\n";
}
?>
Do all your header stuff, then type
maketable('thumbs','pics',8);
and you'll get a table.
(The above code should work - its been copied and pasted in pieces, but should still work)
outputing dynamically created thumnail images to browsers
Posted: Tue Aug 05, 2003 9:06 am
by kendall
Rfaiy,
I was using the header('Content-type : image/jpeg') to output the dyanimcally created thumbnails to the browser...the process would have created a web photo gallery. I was looking at server space hence the reason thumnails were created on the fly.
The person was allowed to create his/ her web photo gallery. but i guess i will have to create the thumnails on image uploads since they were goin to be slow (thought i was faster/ easier)...then i guess i could always readdir() and do a <img src=file> and create the html tables as necessary
ok
i think i have a better angle now thanks
Kendall