entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

3votos

como cargar una lista de imagenes dinamicamente

la cuestion parece simple de resolver pero resulta complicado al menos a mi que no tengo mucha exp como programador.
voy al punto tengo una carpeta con una serie di imagenes en formato jpg alojados en mi servidor local xamp, mi intencion es mostrar todas las imagenes en una pagina, para esto he pensado hacerlo de la siguiente manera

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">

<?php
$carpeta = opendir("selfies2015");
$fichero=readdir($carpeta);
/*
echo $fichero,"<br>";
echo $fichero,"<br>";
#rebobinamos, enviando el puntero al primer fichero
rewinddir($carpeta); */
while($fichero=readdir($carpeta)) {
echo $fichero."<br>";
}
closedir($carpeta);

?>

<div id="selfies"><?php while($fichero=readdir($carpeta)) { echo }?></div>

  </main>
</body>
</html>

quiero que las imagenes se cargen automaticamente en la pagina
el bucle deberia recorrer todas las imagenes y generar el resto del codigo.
he pensado hacerlo con javascript pero creo no es posible.

1 Respuesta

2votos

Leonardo-Tadei Puntos227320

Hola @stevenpro97,

en vez de opendir(), usá la más nueva función scandir(), que directamente devuelve un vector conteniendo los archivos que encuentra.

Es mucho más simple de usar y está soportada desde PHP 4.4 más o menos.

Después, con un foreach (que debe saltear los valores . y .. o ser borrados antes del vector) vas armando los IMG para mostrar cada imagen, algo como:

...
// Lee los archivos
$img = scandir("ruta/al/directorio/");
// saca los 2 primeros elementos
array_shift($img);
array_shift($img);
// genera la lista
foreach($img as $i){
?>
<img src="<?php print($i)">
<?php
}
...

Saludos cordiales!

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta