Tilted Forum Project Discussion Community  

Go Back   Tilted Forum Project Discussion Community > Interests > Tilted Technology


 
 
LinkBack Thread Tools
Old 11-24-2004, 02:52 PM   #1 (permalink)
Loves my girl in thongs
 
arch13's Avatar
 
Location: North of Mexico, South of Canada
[php] gallery script?

I have a php gallery code snippet that has been most excellent to use in the past. As it is GPL'd, I thought I would ask if anyone here can help me or point me in the right direction in modifying the code to a more usefull system for my curent website design.

I searched far and wide before coming accross this code that will create a simple php gallery by creating a table with a set variable of colums and using said table to display the contents of an "imgs/thumbs" folder where the thumbs have the same name as the ful size images. I didn't want a back-end control panel or user controls or comments and ratings, I just wanted a script that printed a table of the contents of the thumbs directory.

I've been very happy with this script, but recent changes to my website have left me worried that I will have to go on a long drawn out hunt for a new one.

Right now the script generates a java popup window with the fullsize image onclick of the thumb. As well, the script won't call the fullsize popups if called to a parent directory. If the scipt was located in /test and I include it in a file located in / , the script can't find the full size images to popup. Very frusturating. The images are in /imgs & /imgs/thumbs while _vars.php is located in the same directory as the script, both in /test directory.

Would any TFP'ers be willing to tell me how I can change the scripts behavior from generating a popup to calling the image onclick into the same page using the ?id=xxx varaible? Is it not just obvious to me why the script can't find the full size images to popup right now?

To throw in a monkey wrench, the order of includes is index.php ---> gallery.php ---> test/popgal.php . The syntax used is http://www.arch13.com/index.php?id=g...d2=test/popgal where id is a variable in index.php and id2 is a variable located in gallery.php . Calling gallery into index.php, then having gallery call popgal.php seems to break the script.

Heres the script with origional credit where due:
Code:
<?php

# PopUp! Gallery, a basic and configurable PHP script
# to display javascript pop-up picture galleries on the web.
# - By Matthew Blake (http://www.darkhighway.net)
# - Download source at http://www.darkhighway.net/PopUpGallery/
# Special thanks to ninebirds from DevShed for helping with sort issue
#####################################################################
# This program utilizes aspects of the following scripts:
# JK Pop up image viewer script- by JavaScriptKit.com
# --- Visit JavaScript Kit (http://javascriptkit.com)
# --- for free JavaScript tutorials and scripts
# PHPphotoAlbum 1.0 - by Daniele Leone (info@danieleleone.com)
# --- Download available at http://www.danieleleone.com/
# Disable right click script III- By Renigade (renigade@mediaone.net)
# --- For full source code, visit http://www.dynamicdrive.com
#####################################################################

include("test/_vars.php");
echo "<!--BEGIN PopUp Gallery -->"."\n";
echo "<style type='text/css'>IMG.popimage { border: $thumb_border; }</style>"."\n";
$files = array ();
$myDirectory = opendir("imgs/thumbs");
echo "\n";
echo "<table width=$table_width bgcolor='$table_bg_color' border='$table_border' cellpadding='$cell_padding' cellspacing='0'>"."\n";
echo "<tr>"."\n";
while ($file = readdir($myDirectory)) {
	if (($file != ".") && ($file != "..") && ($file != "index.php") && !(is_dir("imgs/$file")) )
	{
	$files[] = $file;
	}
}
sort($files);
for ($i = 0; $i < count($files); $i++)
{  
  $file = $files[$i];
	if (is_int(($i + 1) / $cols))
	{
	list($width, $height) = getimagesize("imgs/$file");   
	echo "<td align='center' >";?><a href="#" onClick="popupgalimage('imgs/<?php echo $file;?>', <?php echo "$width";?>, <?php echo "$height";?>); return false"  class="popimage"><? echo "<img src='imgs/thumbs/$file' class='popimage'></a></td>"."\n";
	echo "</tr><tr>"."\n";
	}
	else
	{
list($width, $height, $type, $attr) = getimagesize("imgs/$file");   
echo "<td align='center'>";?><a href="#" onClick="popupgalimage('imgs/<?php echo $file;?>', <?php echo "$width";?>, <?php echo "$height";?>); return false"  class="popimage"><? echo "<img src='imgs/thumbs/$file' class='popimage'></a></td>"."\n";
	}
}
echo "</tr>"."\n";
echo "</table>"."\n";
echo "<!--END PopUp Gallery -->"."\n";
closedir($myDirectory);
?>
__________________
Seen on an employer evaluation:

"The wheel is turning but the hamsters dead"
____________________________
Is arch13 really a porn diety ? find out after the film at 11.
-Nanofever

Last edited by arch13; 11-24-2004 at 09:34 PM.. Reason: changed question
arch13 is offline  
Old 11-25-2004, 07:16 AM   #2 (permalink)
Crazy
 
Location: here and there
the main thing i see is that all your paths are relative. you may want to include absolute paths for your directories. in the case of the php script when it is looking for file paths, /images only works if your images are in the root of the server, not in the web root. so you may need something like /var/www/html/images (or whatever the full path to your images directory is). for the javascript, you need to use web root, so the images file will be in /images. Otherwise the script just looks in its current directory for directories matching 'images'.

i only just glanced at this, but its what jumped right out at me.
__________________
# chmod 111 /bin/Laden
theFez is offline  
Old 11-28-2004, 09:55 PM   #3 (permalink)
Loves my girl in thongs
 
arch13's Avatar
 
Location: North of Mexico, South of Canada
Quote:
Originally Posted by theFez
the main thing i see is that all your paths are relative. you may want to include absolute paths for your directories. in the case of the php script when it is looking for file paths, /images only works if your images are in the root of the server, not in the web root. so you may need something like /var/www/html/images (or whatever the full path to your images directory is). for the javascript, you need to use web root, so the images file will be in /images. Otherwise the script just looks in its current directory for directories matching 'images'.

i only just glanced at this, but its what jumped right out at me.
theFez, thank you for your reply, changing the paths worked


Do you see any way that the script could be modified to call images into the page instead of java popup windows?
I want to use the table of thumbs called into the gallery page via ?id=gallery&id2=popgal (with popgal being this script) to call the images into an adjacent column in the gallery table when the thumbs are clicked. I feel like this script is halfway there. Gallery.php is a table with two columns. The right column includes popgal.php to create the thumbnail table. The left column is empty. Right now the thumbs pop up a window for the full size image. Could php be used to make the full size image appear in the left column instead of a popup by modifying this script?
__________________
Seen on an employer evaluation:

"The wheel is turning but the hamsters dead"
____________________________
Is arch13 really a porn diety ? find out after the film at 11.
-Nanofever
arch13 is offline  
Old 11-29-2004, 09:36 AM   #4 (permalink)
Crazy
 
Location: here and there
sure, you could just modify the anchor tags from calling a jscript popup to calling $PHP_SELF with a modified query string. so add to your query string some key that relates to your full size image, then use the $_GET array to give you the value. Then test to see if a value has been set, if so, load the image in the left col. It would probably make sense to have some sort of default image if nothing has been selected.

Note though, in order to do this server side you would need to reload the page every time you wanted to change it. It could be slicker to load an array of all the full size images (in background, after page has loaded) then use javascript to swap them out in the left column without reloading the page.
__________________
# chmod 111 /bin/Laden
theFez is offline  
Old 12-02-2004, 12:56 PM   #5 (permalink)
Loves my girl in thongs
 
arch13's Avatar
 
Location: North of Mexico, South of Canada
Quote:
Originally Posted by theFez
sure, you could just modify the anchor tags from calling a jscript popup to calling $PHP_SELF with a modified query string. so add to your query string some key that relates to your full size image, then use the $_GET array to give you the value. Then test to see if a value has been set, if so, load the image in the left col. It would probably make sense to have some sort of default image if nothing has been selected.

Note though, in order to do this server side you would need to reload the page every time you wanted to change it. It could be slicker to load an array of all the full size images (in background, after page has loaded) then use javascript to swap them out in the left column without reloading the page.
Java is something I've never even attempted before.
How would I go about modifying the script via PHP to call $PHP_SELF into an adjacent column in a table?
When I try to have the php code block bridge the table it breaks the table layout and align's the page to the right instead of center. I'm guessing I could use php else to load the first image in the table if no image has been called.
I'm not really sure how to code the <img> tage in the right column to be dynamic and aquire the variable from the left hand table.
The site runs on ?id=xxx dynamic calls. How would I add the variable to the url without breaking that system?
I'm at a total lose as to how to code the right hand column to accept a dynamic variable and display that image. I'm going to look into $PHP_SELF to try and discern how that call can be used to call the images from the gallery table code block.

Thank you for your patience so far theFez


(java seems like such an awsome idea, as it requires no url variable and less change to the gallery table code, but that's way beyond anything I've ever known )
__________________
Seen on an employer evaluation:

"The wheel is turning but the hamsters dead"
____________________________
Is arch13 really a porn diety ? find out after the film at 11.
-Nanofever
arch13 is offline  
Old 12-02-2004, 04:53 PM   #6 (permalink)
Crazy
 
Location: here and there
just build your table and set it so you have a single image in the left side and your thumbnails in the right. so you have your tnails in the right side.

in the left side you can do something like this

<img src='<?php if($_GET['id']){echo "/path/to/images/".$_GET['id'].".jpg";}
else{ echo '/path/to/images/default.jpg';} ?>'>

by the way, javascript has nothing to do with java except the name. javascript, ecmascript, jscript are all pretty similar and generally used for client side scripting.
__________________
# chmod 111 /bin/Laden
theFez is offline  
Old 01-07-2005, 01:38 AM   #7 (permalink)
Loves my girl in thongs
 
arch13's Avatar
 
Location: North of Mexico, South of Canada
Quote:
Originally Posted by theFez
just build your table and set it so you have a single image in the left side and your thumbnails in the right. so you have your tnails in the right side.

in the left side you can do something like this

<img src='<?php if($_GET['id']){echo "/path/to/images/".$_GET['id'].".jpg";}
else{ echo '/path/to/images/default.jpg';} ?>'>

by the way, javascript has nothing to do with java except the name. javascript, ecmascript, jscript are all pretty similar and generally used for client side scripting.
Ok, I understand how to pull say ID3 from the url and have the right table display the correct picture.
So if the url was http://www.arch13.com/index.php?id=g...al&id3=picture, then picture.jpg would be displayed.
What I'm having trouble with is how to change the thumbnail script to give the clicked on image an id3=picturename url. Also, Is is possible to make that "id" auto-incramenting so that "idx" was id4 or id5 if needed?

Sorry if i sound like an idiot, but I don't understand how to make the variable be passed from the thumbnail script in the left side table to the display script in the right table
The actual address is http://www.arch13.com/index.php?id=g...d2=test/popgal
I take it that Java is way harder than php isn't it

Thank you for your patience with me theFez
__________________
Seen on an employer evaluation:

"The wheel is turning but the hamsters dead"
____________________________
Is arch13 really a porn diety ? find out after the film at 11.
-Nanofever
arch13 is offline  
 

Tags
gallery, php, script


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT -8. The time now is 08:05 PM.

Tilted Forum Project

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Search Engine Optimization by vBSEO 3.6.0 PL2
© 2002-2012 Tilted Forum Project

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360