Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/05/2008, 11:59
lana27
 
Fecha de Ingreso: septiembre-2007
Mensajes: 73
Antigüedad: 17 años, 6 meses
Puntos: 0
Mostrar solamente una carpeta de la galeria

Hola encontre un código que muestra una galeria de fotos, este código muestra primero las fotos que estan en la raiz despues muestran las carpetas, he tratado de buscar en el código para cambiar de que en lugar que habra todo solo me muestre una carpeta especifica, pero la verdad no he podido hacer que funcione. Talvez alguien tiene conocimiento en esto y me pueda ayudar

El código es el siguiente:
[PHP]<?php
//----- SENTENCIAS INICIALES -----//
// Numero de miniaturas que se muestra en la pagina
$limit = 40;
// Ancho maximo de las miniaturas, 115 pixeles por defecto.
$w = 115;
// Alto maximo de las miniaturas, 100 pixeles por defecto.
$h = 100;
// Poner 1 para mostrar lista de carpetas. Poner 0 para desactivarlo.
$show_folders = 0;
// Poner 1 para mostrar el nombre de las imagenes. Poner 0 para desactivarlo.
$ititle = 1;
// Poner 1 para mostrar la fecha de modificacion de la imagen. Poner 0 para desactivarlo.
$idate = 0;
// Poner 1 para mostrar el tamaño de las imagenes. Poner 0 para desactivarlo.
$isize = 1;
// Poner 1 para mostrar las dimensiones de la imagen. Poner 0 para desactivarlo.


if($pg = $_GET['pg'])
{
$thumb = (($pg-1)*$limit);
$i = $thumb;
}
else
$i = 0;

$dirlist = dirname($_SERVER['SCRIPT_NAME']);

$subdir = explode("/", $dirlist);

$subdir = array_reverse($subdir);

$replace = array ("_", "/");
$with = array (" ", " - ");
$title = str_replace($replace, $with, $_GET[d]);

if(ereg("\.\.", $_GET['d']))
header ("Location: ?");

if($_GET['t'])
$limit = $t;

$pwidth = $w+15;
$pheight = $h+15;
if($ititle)
$pheight +=10;
if($isize || $idim)
$pheight +=10;

?>



<?PHP
//-------------------------------- Navegacion de directorios -----------------------------

function dir_list($dir){ // obtiene la lista de directorios de la actual carpeta
global $subdir;
$rootname = str_replace("_", " ", $subdir['0']); // nombre de la raiz de la galeria fotografica
$dlist = array();

if ($hdir = opendir('./'.$dir))
{
while ($obj = readdir($hdir))
{
if (((preg_match("/^\./",$obj)==0) && (!eregi('^(.*).
Código PHP:
$', $obj))) && is_dir($dir.$obj))
          $dlist[] = $obj;
      }
    closedir($hdir);
  }
  else
    die('No se pueden mostrar los ficheros de ' . $dir);

  asort($dlist);
  echo "<div id='dirnav' style='text-align:left'><ul>\n";

    $dirtree = explode("/", $_GET['d']);
  if(!$_GET['d'])
    array_shift($dirtree); // elimina la redundancia de los puntos "." del directorio
    foreach ($dirtree as $dirsub)
    {
        echo "<li> <a href='?d=$dirparent$dirsub'>$dirsub &raquo;</a></li>\n";
        $dirparent .= $dirsub.'/';
    }

  foreach ($dlist as $link)
  {
    echo "<li>&nbsp;&nbsp;<a href='?d=$dir$link'>$link (Ver la galeria)</a></li>\n";
  }
  echo "</ul>\n</div>\n";
}


//---------------------------------------Navegacion de la pagina -----------------------------

function pagenav(){ // Escribe el numero de miniaturas, paginas restantes, y el enlace de "Anterior", "Inicio" y "Siguiente"
global $page, $pg, $thumb, $dd, $limit, $numtotal, $numremain;

  $page = 0;
  if(!$pg)
    $pg = 1;
  echo "<div class='pagenav'>\n<ul>\n";

  if($thumb > 0)
    echo "<li><a class='prev' href='?".$dd."pg=".($pg-1)."'>&laquo;Anterior</a></li>\n";
  else
    echo "<li><a class='prev' href='javascript:history.go(-1)'>&laquo;Anterior</a></li>\n";

  while($page*$limit < $numtotal)
  {
    $page ++;
    unset($cur);
    if($page == $pg)
    {
      $cur = ' class="current"';
    }
    echo "<li$cur><a class='page' href='?".$dd."pg=$page'>".($page)."</a></li>\n";
  }

  if($numremain > $limit)
    echo "<li><a class='next' href='?".$dd."pg=".($pg+1)."'>Siguiente&raquo;</a></li>\n";
  else
    echo "<li><div class='next'>Siguiente&raquo;</div></li>\n";
  echo "</ul>\n</div>";
}


//------------------------------------- Obtener el tamaño de la imagen -------------------------

function getfilesize($size) // obtener el tamaño de la imagen, y expresarlo en Bytes, o multiplos
{
  $units = array(' B', ' KB', ' MB', ' GB', ' TB');
  for ($i = 0; $size > 1024; $i++) { $size /= 1024; }
  return round($size, 2).$units[$i];
}


//------------ Establecer que carpeta estamos viendo

if($_GET['d']) // La variable d es un string de URL, para navegar los subdirectorios
{
  $d = $_GET['d'].'/';
  $dd = 'd='.$_GET['d'].'&amp;'; // se usa para pasar las secuencias por URL
  $current_dir .= $d;
}

opendir($current_dir); // abre el directorio para navegar las imagenes

if ($show_folders)
  dir_list($current_dir); // escribe los directorios de navegacion


//----------- Crear la lista de imagenes

$list = array();

if ($dir = opendir('./'.$current_dir)){
    while ($file = readdir($dir)){
        if (eregi('.jpg', $file)){ //Si el archivo es JPG
        //if (eregi('.gif', $file)){ //Si el archivo es JPG
            $list[] = $file; //que lo muestre
            }
        else if (eregi('.gif', $file)){ //Si el archivo es GIF
            $list[] = $file; //que lo muestre
            }
        else if (eregi('.png', $file)){ //Si el archivo es PNG
            $list[] = $file; //que lo muestre
            }
    }
    closedir($dir);
}

asort($list);
$numtotal = count($list); //numero total de miniaturas

if ($thumb)
{
  $s = 0;
  while($s < $thumb)
  {
    array_shift($list);
    $s++;
  }
}

$numremain = count($list); // numero total restante de miniaturas en la carpeta

if ($_GET['d'])
{
pagenav(); //navegador superior de "anterior" y siguiente"
}



//--------- Crear miniaturas y galeria

echo "<div id='thumbnails'>";
foreach ($list as $pic)
{
       $fp = $current_dir.$pic;
       if($i < $thumb+$limit)
       {
      $image = $currentdir.$pic;
      $i_size = getfilesize(filesize($fp));
      $i_area = getimagesize($fp);
      $i_width = $i_area[0];
      $i_height = $i_area[1];
      $name = str_replace('.jpg', '', $pic);
      echo "<p class='thumb'><tt>\n";
      echo "<a href='$current_dir$pic' rel='thumbnail'>";
      echo "<img src='image_resize.php?i=$d$pic&amp;w=$w&amp;h=$h' alt='$pic' border='0' />";
      if($ititle)
        echo "<br /><span class=\"iname\">$name</span>";
      if ($idate)
        echo  "  ".date("F d", filemtime($current_dir.$pic));
      echo "  </a>\n<br />";
      if($idim)
          echo "<span class=\"idim\">$i_width x $i_height</span><br/>";
      if($idim && $isize)
        echo "  ";
      if ($isize)
        echo "<span class=\"isize\">[$i_size]</span>";
      echo "</tt></p>\n\n";
      $i++;
    }
}

echo "</div>";

/*if ($_GET['d'])
{
pagenav(); //navegador inferior de "anterior" y siguiente"
}*/

if ($pujador == 1){//Esta funcion implementa un Script para subir imagenes a la galeria
?>
                        <p> 
                          <?PHP
}else{

echo 
"<h1></h1>
</div>"
;
}
?>