Re: [Beta] Gallery
Thanks for the code.
How to set by latest not random?
Also i want this, how to make by latest ???
You are not logged in. Please login or register.
Thanks for the code.
How to set by latest not random?
Also i want this, how to make by latest ???
It has a shuffle button, but whats the point? The photos automatically shuffle every-time I reload the page anyways.
Cool to see that someone is using that code I wrote awhile ago.
Cool to see that someone is using that code I wrote awhile ago.
Yeah it's cool, but can you make it by latest uploades not random... ??
<?php
$thispage = 'gallery.php';
$img_dir = 'thumbs/';
$per_page = 4;
$per_row = 2;
$_images = array();
$times = array();
if ( is_dir( $img_dir ) && ( $dir = opendir( $img_dir ) ) ) {
$i = 0;
while( false !== ( $file = readdir( $dir ) ) ) {
if ( $file == '.' || $file == '..' || is_dir( $img_dir . $file ) ) {
continue;
}
$_images[$i] = $file = $file;
$times[$i] = filemtime( $img_dir . $file );
$i++;
}
}
arsort( $times );
foreach( $times as $i => $time ) {
$images[] = $_images[$i];
}
$page = 1;
if ( isset( $_GET['page'] ) && $_GET['page'] > 0 ) {
$page = (int) $_GET['page'];
}
$total = ceil( ( count( $images ) / $per_page ) );
$images = array_slice( $images,( ( $page * $per_page ) - $per_page ),$per_page );
$html = "<table cellspacing=\"0\" cellpadding=\"3\">\n\t<tr>\n";
$i = 0;
foreach( $images as $image ) {
if ( $i == $per_row ) {
$html .= "\t</tr>\n\t<tr>\n";
$i = 0;
}
$html .= "\t\t<td><a href=\"/?v={$image}\"><img src=\"{$img_dir}{$image}\" /></a></td>\n";
$i++;
}
$html .= "\t<tr>\n";
if ( $total > 1 ) {
$nav = '';
if ( $page > 1 ) {
$nav .= "<a href=\"{$thispage}?page=1\">[FIRST]</a><a href=\"{$thispage}?page=" . ( $page - 1 ) . "\">[PREV]</a>";
}
$i = 1;
while( $i < ( $total + 1 ) ) {
$nav .= "<a href=\"{$thispage}?page={$i}\">[{$i}]</a>";
$i++;
}
if ( $page < $total ) {
$nav .= "<a href=\"{$thispage}?page=" . ( $page + 1 ) . "\">[NEXT]</a><a href=\"{$thispage}?page={$total}\">[LAST]</a>";
}
$html .= "\t<tr>\n\t\t<td colspan=\"{$per_row}\">{$nav}</td>\n\t</tr>\n";
}
$html .= '</table>';
echo $html;
?>That will sort the images by latest file added to the directory.
@sandro The pagination works if he would have put session_start() on the page. The chunks of images were not being saved into a session, so the randomized the images every page load. If you start the session, pagination will make sense.
@Thatphotohost The reason why it shuffles every page load is that the session hasn't been started. Its not saving the images to keep their order on the next page load. If you put session_start() at the top of the page, it won't shuffle every page load.
Kkeith29!! Thanks for making that fix! If you can, please contact me, as there are a few other adjustments I would like to make to the gallery, and I would be more than pleased to hire you to do that!
I sent to the server file gallery.php and a few photos. Later I removed the photos and when I went to gallery.php were further these pictures as before, but when clicked on, any of it showed a message that the photo does not exist.
Is it possible to do so to this gallery, showed only those pictures that are on the server?
sorry for my English...
Last edited by ThaMCW (2010-01-18 17:27:46)
thanks very good but where is gallery.php ?
It is in the first post. first code block, Here i quoted it.
<? require('engine.php'); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "[url]http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd[/url]"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?=LANG;?>" lang="<?=LANG;?>"> <head> <meta name="generator" content="Chevereto <?=SC_VERSION;?>" /><!-- Dejar para estadisticas por favor! --> <title><? echo $titulo.' '.APP_NAME;?> - <?=TAG_LINE;?></title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="content-language" content="<?=LANG;?>" /> <link href="<?=URL_SCRIPT;?>estilo.css" rel="stylesheet" type="text/css" /> <link rel="shortcut icon" href="<?=PATH_SCRIPT;?>favicon.ico" type="image/x-icon" /> </head> <body> <div id="top"> <div id="logo"> <a href="<?=URL_SCRIPT;?>"><img src="<?=PATH_SCRIPT;?>site-img/logo.png" alt="<?=APP_NAME;?>" /></a> </div> <div id="tagline"><?=TAG_LINE;?></div><div id="limite">JPG PNG BMP GIF <span>Max.<?=$max_mb;?>Mb</span></div> </div> <div id="contenido"> <div id="selector_up"> </div> <div align="center"> <?php // credits to kkeith29 // by desiboy aka 3lite $thispage = 'gallery.php'; $imageDir = 'thumbs/'; $perPage = 50; //total images to display per page $perRow = 5; //total images per row if ( isset( $_GET['reset'] ) ) { unset( $_SESSION['chunks'] ); } if ( !isset( $_SESSION['chunks'] ) ) { if ( is_dir( $imageDir ) ) { if ( $dir = opendir( $imageDir ) ) { while ( ( $file = readdir( $dir ) ) !== false ) { if ( $file !== '.' && $file !== '..' ) { $images[] = $file; } } closedir( $dir ); } else { die("Unable to read directory - {$imageDir}"); } } shuffle( $images ); $_SESSION['chunks'] = array_chunk( $images,$perPage ); } $page = 1; if ( isset( $_GET['page'] ) && $_GET['page'] > 0 ) { $page = (int) $_GET['page']; } $images[] = $file; $chunk =& $_SESSION['chunks']; $total = count( $chunk ); $images[] = $file; if ( isset( $chunk[$page-1] ) ) { $images = $chunk[$page-1]; $html = "<table cellspacing=\"0\" cellpadding=\"3\">\n\t<tr>\n"; $i = 0; foreach( $images as $image ) { if ( $i == $perRow ) { $html .= "\t</tr>\n\t<tr>\n"; $i = 0; } $html .= "\t\t<td><a href=\"/?v={$image}\"><img src=\"{$imageDir}{$image}\" /></a></td>\n"; $i++; } $html .= "\t<tr>\n"; if ( $total > 1 ) { $nav = ''; if ( $page > 1 ) { $nav .= "<a href=\"{$thispage}?page=1\">[FIRST]</a><a href=\"{$thispage}?page=" . ( $page - 1 ) . "\">[PREV]</a>"; } $i = 1; while( $i < $total + 1 ) { $nav .= "<a href=\"{$thispage}?page={$i}\">[{$i}]</a>"; $i++; } if ( $page < $total ) { $nav .= "<a href=\"{$thispage}?page=" . ( $page + 1 ) . "\">[NEXT]</a><a href=\"{$thispage}?page={$total}\">[LAST]</a>"; } $html .= "\t<tr>\n\t\t<td colspan=\"{$perRow}\">{$nav}</td>\n\t</tr>\n"; } $html .= "</table><br /><br /><a href=\"{$thispage}?reset=true\">Shuffle Images</a>"; echo $html; } ?></div> </div> <div id="foot"><div class="foot-d2"><?=APP_NAME;?> - <a href="gallery.php">Gallery</a> - Powered by <a href="http://chevereto.com/" target="_blank">Chevereto</a></div></div> </body> </html>
Good,
I like the gallery but I could not put the name of the image?
In my gallery why there is a link: http://mywebsite/?v=.htaccess
???
Last edited by xinomz (2010-04-01 04:28:05)
ya how to remove the display of htaccess file from the gallery ? ![]()
add this code in .htaccess
<FilesMatch "^.htaccess" >
deny from all
</FilesMatch>Powered by PunBB, supported by Informer Technologies, Inc.
Powered by PunBB