Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/06/2011, 12:59
bcjmpr
 
Fecha de Ingreso: noviembre-2010
Mensajes: 27
Antigüedad: 13 años, 5 meses
Puntos: 0
Galería de imágenes con CSS y PHP scandir

Bueno, no he encontrado mucha información al respecto en Google, así que vengo a que me digan que lo que busco no es posible

Tengo una galería de imágenes sólo con CSS, nada de javascript. El problema es que tengo una mostruosa cantidad de carpetas con fotos y para facilitar un poco su actualización quiero llamarlas con la función scandir(). El HTML de la galería, simplificado, va así:

Código HTML:
<ul class="slider"> <!--main image-->
    <li id="foto01"><img src="path/img.jpg" alt="" /></li>
    <li id="foto02"><img src="path/img.jpg" alt="" /></li>
</ul>
<ul class="thumb"> <!--thumbnails-->
    <li><a href="#foto01"><img src="path/img.jpg" alt="" /></a></li>
    <li><a href="#foto02"><img src="path/img.jpg" alt="" /></a></li>
</ul> 
Entonces el anchor tag liga directamente a la foto en su versión full size para que se despliegue en la misma página, esto con CSS.

Cambiándolo por la función de PHP lo he dejado así para la imagen principal (dentro de <ul class="slider">):

Código PHP:
$featured_dir 'path/';
    
$scan scandir($featured_dir);
    echo 
'<li id="' $scan[2] . '"><img src="' $featured_dir $scan[2] . '" /></li>'
Y así para los thumbnails (dentro de <ul class="thumb">):

Código PHP:
$dir 'path/thumbs/';
    
$scan scandir($dir);
    for (
$i 0;  ;$i<count($scan); $i++) {
        if(
$scan[$i] != '.' && $scan[$i] != '..') {
            echo 
'<li><a href="#' $scan[$i] . '"><img src="' $dir $scan[$i] . '" alt="' $scan[$i] . '" /></a></li>';
        }
    }; 
El error viene porque el id de las imágenes principales y el href de las pequeñas no se generan dinámicamente, quizá porque no lo estoy implementando correctamente o mi enfoque no es el adecuado o es imposible del todo.

Agradecería si alguien me pudiera orientar antes de empezar a buscar otra alternativa. Y si este no es el foro correcto, no estoy seguro, favor de mover el post por favor.

Gracias