Foros del Web » Programando para Internet » PHP »

Mostrar solamente una carpeta de la galeria

Estas en el tema de Mostrar solamente una carpeta de la galeria en el foro de PHP en Foros del Web. 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, ...
  #1 (permalink)  
Antiguo 03/05/2008, 11:59
 
Fecha de Ingreso: septiembre-2007
Mensajes: 73
Antigüedad: 16 años, 7 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>"
;
}
?>
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:18.