Re: [Beta] Gallery

polel wrote:

Thanks for the code.

How to set by latest not random?

Also i want this, how to make by latest ???

Thumbs up

Re: [Beta] Gallery

It has a shuffle button, but whats the point? The photos automatically shuffle every-time I reload the page anyways.

Thumbs up

Re: [Beta] Gallery

Cool to see that someone is using that code I wrote awhile ago.

Thumbs up

Re: [Beta] Gallery

kkeith29 wrote:

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... ??

Thumbs up

Re: [Beta] Gallery

<?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.

Thumbs up

Re: [Beta] Gallery

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!

Thumbs up

Re: [Beta] Gallery

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)

Thumbs up

Re: [Beta] Gallery

thanks very good but where is gallery.php ? smile

Thumbs up

Re: [Beta] Gallery

kingpin wrote:

thanks very good but where is gallery.php ? smile

It is in the first post. first code block, Here i quoted it.

3lit3 wrote:
<?
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>

Thumbs up

Re: [Beta] Gallery

thanks very good

Thumbs up

Re: [Beta] Gallery

Good,

I like the gallery but I could not put the name of the image?

Thumbs up

Re: [Beta] Gallery

In my gallery why there is a link: http://mywebsite/?v=.htaccess

???

Last edited by xinomz (2010-04-01 04:28:05)

Thumbs up

Re: [Beta] Gallery

ya how to remove the display of htaccess file from the gallery ?  roll

Thumbs up

Re: [Beta] Gallery

add this code in .htaccess

<FilesMatch "^.htaccess" >
deny from all
</FilesMatch>

Thumbs up

Re: [Beta] Gallery

Thnx mate works like a charm  smile

Thumbs up