Galeria en PHP no carga imagenes
Publicado por Estefa (3 intervenciones) el 17/09/2017 13:07:00
Hola, llevo horas dando vueltas a una galeria y no logro que me funcione, soy principiante en PHP Y agradeceria cualquier ayuda. Adjunto codigo debajo.
En la galeria hay miniaturas y al hacer click te lleva la foto grande.. El problema es que no se abren las imagenes grandes. La galaeria se encuentra en la página de cada producto, donde cada uno tiene un ID y una carpeta propia, es decir , el producto 200 tiene la carpeta 200 donde hay las fotos grandes junto con una subcarpeta 'thumbs'.
-carpeta producto
--> imagenes grandes
-->carpeta thumbs -->imagenes pequeñas
Para mostrar las 2 carpetas desde PHP , entiendo que por lógica hay que abrir 2 directorios con opendir (carpeta producto y carpeta thumbs), por lo tanto habrá que hacer 2 whiles recorriendo las imagenes de cada directorio, pero no estoy seguro si el codigo es correcto, los he puesto seguidos es asi?
Como he dichos los thumbnails de la carpeta thumbs, se cargan, pero los del directorio de las fotos grandes, no.
Este es el codigo de la galeria - En cambio, si en la ruta pongo una imagen.jpg tal cual en lugar de la variable $file2 entonces se carga la imagen grande.
//NO FUNCIONa CON $file2
<a data-fancybox="gallery" href="img/content/producto/<?php echo $_GET['id']?>/<?php echo $file2 ?>">
<img src="<?php echo $ruta.$file ?>" width="200px" height="auto" style="float:left;"></a>
He comprobado las rutas estan bien , intuyo que debe ser un fallo de lógica o algo así... Espeor haberme explicado. A ver si alguien sabe ver el error y puede poner el codigo corregido. Gracias de antemano.
Codigo de producto.php
En la galeria hay miniaturas y al hacer click te lleva la foto grande.. El problema es que no se abren las imagenes grandes. La galaeria se encuentra en la página de cada producto, donde cada uno tiene un ID y una carpeta propia, es decir , el producto 200 tiene la carpeta 200 donde hay las fotos grandes junto con una subcarpeta 'thumbs'.
-carpeta producto
--> imagenes grandes
-->carpeta thumbs -->imagenes pequeñas
Para mostrar las 2 carpetas desde PHP , entiendo que por lógica hay que abrir 2 directorios con opendir (carpeta producto y carpeta thumbs), por lo tanto habrá que hacer 2 whiles recorriendo las imagenes de cada directorio, pero no estoy seguro si el codigo es correcto, los he puesto seguidos es asi?
Como he dichos los thumbnails de la carpeta thumbs, se cargan, pero los del directorio de las fotos grandes, no.
Este es el codigo de la galeria - En cambio, si en la ruta pongo una imagen.jpg tal cual en lugar de la variable $file2 entonces se carga la imagen grande.
//NO FUNCIONa CON $file2
<a data-fancybox="gallery" href="img/content/producto/<?php echo $_GET['id']?>/<?php echo $file2 ?>">
<img src="<?php echo $ruta.$file ?>" width="200px" height="auto" style="float:left;"></a>
He comprobado las rutas estan bien , intuyo que debe ser un fallo de lógica o algo así... Espeor haberme explicado. A ver si alguien sabe ver el error y puede poner el codigo corregido. Gracias de antemano.
Codigo de producto.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<div>
<?php
$ruta = "img/content/producto/$_GET[id]/thumbs/"; // Indica ruta para thumbnails
$filehandle = opendir($ruta); // Abrir archivos
while ($file = readdir($filehandle)) {
if ($file != "." && $file != "..") {
$tamanyo = GetImageSize($ruta . $file);
$ruta2 = "img/content/producto/$_GET[id]/"; // Indica ruta para imagen grande
$filehandle2 = opendir($ruta2); // Abrir archivos
while ($file2 = readdir($filehandle2)) {
if ($file2 != "." && $file2 != "..") {
$tamanyo2 = GetImageSize($ruta2 . $file2);
}
}
?>
// CON UNA IMAGEN.JPG SI FUNCIONA!
<a data-fancybox="gallery" href="img/content/producto/<?php echo $_GET['id']?>/imagen.jpg">
<img src="<?php echo $ruta.$file ?>" width="200px" height="auto" style="float:left;"></a>
<?php
}
}
closedir($filehandle); // Fin lectura archivos
closedir($filehandle2); // Fin lectura archivos
?>
</div>
Valora esta pregunta
0