Galería de Fotos en un único script
29 de Agosto de 2007
Lecturas: 8,883

Descripción

Éste es un script destinado a generar una galería de fotos con las opciones básicas en base a un árbol de directorios en el servidor. La idea es emplazar el script en la raíz del árbol de directorios que contienen fotos y se generará una vista con thumbnails de las fotos y representación de los subdirectorios, ambos clicables, listo para navegar por el directorio y visualizar las fotos.

Características

  • Presentación thumbnail de las imágenes soportadas, recursivamente.
  • El thumbnail se calcula al vuelo para minimizar el ancho de banda utilizado.
  • Al pinchar en una imagen se muestra ésta en estilo ficha, en tamaño mayor.
  • Ordenación alfabética de los elementos en la pantalla thumbnail.
  • Código CSS válido.
  • Enlaces de Siguiente, Anterior y Volver al Album desde la pantalla de Ficha.

ScreenShots

Vista de Miniaturas Vista de Ficha
Instalación / ejecución

  1. Descargar el archivo
  2. Cambiarle el nombre a “index.php”
  3. Colocarlo en la raíz del directorio de fotos
  4. Acceder al directorio de las fotos mediante un navegador

Historico de versiones

version 1.0 [Descargar aqui: MiniGallery.php]

  • Reescritura de todo el codigo. Ahora se usan clases, esta mejor organizado y el codigo generado es valido.
  • Añadido cuadro de navegacion en la vista de ficha
  • No se realiza caché de las imagenes (posiblemente en la siguiente versión).
  • No se gerena un archivo comprimido ZIP (con más de 10 fotos normales de una cámara el script se desbordaba de memoria)
  • No trata de generar un htaccess.
  • Todo esto hace el script mas liviano y mas rapido

version 0.1 [Descargar aqui: Fotos.php]

  • Version inicial
  • Presentación thumbnail de las imágenes soportadas, recursivamente.
  • El thumbnail se calcula al vuelo para minimizar el ancho de banda utilizado.
  • Al pinchar en una imagen se muestra ésta en estilo ficha, en tamaño grande
  • Se tienen en cuenta acentos y carácteres especiales en el nombre de la imagen.
  • Ordenación alfabética de los elementos en la pantalla thumbnail.
  • Caché del thumbnail automático (el primero que solicita el thumbnail de un directorio genera la caché).
  • Descargar directorios enteros en ZIP.
  • La mayoría de parámetros son fácilmente configurables en la asignación general de variables.
Tags: , , , ,

Leer los Comentarios

[ # 6836 ] Comment desde hernan [11 de Octubre de 2007, 01:37]

Hola, no se si alguien va a leer esto, pero me gustaría saber cómo configurar el archivo, algo de php sé pero recién estoy aprendiendo y a simple vista no me doy cuenta de cuáles son las variables que tengo que modificar.

Si alguien me puede ayudar se lo agradecería.

[ # 6841 ] Comment desde Xavi [11 de Octubre de 2007, 03:29]

Buenas. Yo si que leo esto ;)

Primero de todo, debes volver a bajarte el archivo… había un problema ;)

Por otro lado, sólo debes cambiar los parámetros de los DEFINEs que hay al principio del archivo. El resto debería ir por sí solo.

Si tienes más dudas, aquí estoy.

[ # 6859 ] Comment desde Stati Juan MAtias [12 de Octubre de 2007, 02:02]

He bajado el archivo. so sub a mi web, inicio en la url correcta y se queda en blanco. no logro ver nada. La version 0.1 funciona OK. la version 1.0 no me funciona.- GraciaS !

[ # 6913 ] Comment desde Xavi [12 de Octubre de 2007, 10:40]

Pues parece que estoy de pega. Algun problema debía tener con el archivo (no era la versión corecta). Ahora está ya OK. El tema es bajarse el archivo, cambiarle el nombre, subirlo a tu directorio público de fotos y llamar al archivo desde el navegador.

Si a partir de aquí no te va, dame un toque y lo vemos.

[ # 7532 ] Comment desde Stati Juan MAtias [25 de Octubre de 2007, 08:37]

Excelente! Funciona Correctamente! Disculpa mi GRAN DEMORA en efectuar el agradecimiento. !!! Esta Muy bueno!

[ # 7564 ] Comment desde Xavi [26 de Octubre de 2007, 08:08]

Bueno, pues me alegro! Después de tu último comentario pensaba que habías abandonado… ;)

Por cierto, podrías mantener mi enlace en tu pié de página?

Felicidades!

[ # 7809 ] Comment desde Voodoo [31 de Octubre de 2007, 05:37]

Veo su script muy interesante voy a probarlo en mi web y me gustaria ayudar con el codigo, diganme

Puedo aportar mis propias versiones?

Siento que le hace falta un poco de optimizacion para buscadores. Podria modificarlo y publicarlo para tener mas diversidad?

[ # 7813 ] Comment desde Xavi [31 de Octubre de 2007, 08:25]

Gracias por tu opinión!
Por supuesto que puedes ayudar en el proyecto! De hecho, la optimización para buscadores es algo que siempre he tenido en mente pero me cuesta de llevar a cabo. Si te fijas en la primera versión, hay todo un procedimiento para generar un .htaccess que maneje los parámetros enviados… pero nunca llegó a funcionar muy bién. Eres bienvenido!

Si te parece bién, cuando tengas una versión mejorada avisas, la probamos y la colgamos. Muchas gracias ;)

Saludos!

[ # 7836 ] Comment desde guido_cc [31 de Octubre de 2007, 05:05]

Hola. Realmente funciona y muy bien. Es muy agradable que todo esté en un solo archivo. :D

Tengo un par de dudas, y espero que me puedan ayudar si no es mucha la molestia.

En la carpeta donde tengo las imagenes, ademas de las fotos hay otros archivos (el mismo index.php por ejemplo). Cuando veo el index, se me listan solamente las imagenes, pero si voy a una en especial, y empiezo a navegar en ellas, con el menu , me muestran no solo las imagenes, sino tambien, los archivos que no son imagenes. Como configuro eso para que no salgan visualizados esos archivos, o cualquier otro?

Ademas, en el mismo detalle de las fotos, en ese mini menu de navegacion, si apreto la opcion “Album”, me tira a el index.php, pero agregado con esto index.php?action=change_folder&to=, lo que hace que no se me vean las imagenes.

De antemano muchas gracias.

[ # 8056 ] Comment desde Xavi [04 de Noviembre de 2007, 10:21]

Puede que hayas descubierto un bug. En breve me pongo con ello. Perdona las molestais ;)

[ # 8348 ] Comment desde Alejandro Gonzalez M. [08 de Noviembre de 2007, 03:34]

Galería de Fotos en un único script.
como puedo cambiarle el color al la letra (poner blanca) y al fondo ya lo descubri ($background_color =negro).

gracias

[ # 8350 ] Comment desde Xavi [08 de Noviembre de 2007, 04:09]

Por lo que veo estás usando la versión 0.1, verdad? Esa versión no puede cambiar el color de la letra de una forma fácil… tendrás que rebuscar en el código los sitios dónde se printan cosas por pantalla y aplicar el color de la fuente que quieras.

Yo te aconsejo que uses la versión nueva.

Saludos.

[ # 10162 ] Comment desde nestor [27 de Noviembre de 2007, 10:44]

esta muy bueno este script
felicidades gracias me ahoraron un choro de trabajo

[ # 10188 ] Comment desde Xavi [28 de Noviembre de 2007, 08:41]

De nada! ;)

[ # 12096 ] Comment desde Milciades Baez [17 de Diciembre de 2007, 05:48]

Buenas
Quisiera reportar un problema en el scrip…
cuando pasamos las fotos de siguiente y anterios funciona todo ok
pero cuando se pretende ver Album envia directamente a la raiz del sistema por favor mirar en la direccion que envio.
http://www.mninformatica.com.py/elias/eliascumple/captura.jpg

[ # 12178 ] Comment desde Xavi [18 de Diciembre de 2007, 08:59]

El enlace me da error. De todas formas, mira qué ruta está cogiendo como base…

[ # 12192 ] Comment desde Dj Satnaf® [18 de Diciembre de 2007, 12:43]

Buenas… recien estoy por bajar el scripts… pero mi duda es si funcionaria en htm… xq veo que es .php…

[ # 12193 ] Comment desde Xavi [18 de Diciembre de 2007, 12:45]

Necesitas que tu servidor web acepte PHP.

Saludos!

[ # 12194 ] Comment desde Dj Satnaf® [18 de Diciembre de 2007, 12:46]

bien gracias.. ahora lo pruebo…

[ # 12300 ] Comment desde Milciades Baez [20 de Diciembre de 2007, 02:24]

Buenas Muchas gracias por la respuesta y el tiempo.

No estabas encontrando la direccion por que habia eliminado esas carpetas, ahora modifique los datos y baje la nuevamente el index, pero me sigue dando un error no muestran las imagenes…

Gracias nuevamente

los archivos estan en http://www.mninformatica.com.py/elias/

[ # 15180 ] Comment desde pcorralr [15 de Enero de 2008, 01:22]

necesito saber si se puede hacer que la galeria muestre solo un directorio concreto pq no consigo hacerlo, gracias por tu trabajo!!

[ # 15227 ] Comment desde Xavi [15 de Enero de 2008, 09:03]

Para mostrar un directorio en concreto, simplemente pon el script en ése directorio y listos. El Script recorre el directorio recursivamente, así que si no quieres que bajen más de uno en concreto, pon el script ahí.

Salu10.

[ # 17911 ] Comment desde Andreas [24 de Febrero de 2008, 12:18]

Para cuando una Paginación ?

:-)

[ # 19501 ] Comment desde Descargas [08 de Abril de 2008, 08:05]

Muy buen artículo!! estoy probandolo, pero de momento no logro qu me funciones :S

[ # 21312 ] Comment desde omar bautista cruz [08 de Mayo de 2008, 12:32]

exelente amigo mio solo que tengo unos problemas para ponerle un baner al principio de la pagina no se si se pueda

[ # 21340 ] Comment desde Xavi [08 de Mayo de 2008, 08:11]

Si estás creando una galería desde una página del Wordpress, simplemente agrega el banner antes de la declaración del plugin y listo. El Plugin actúa como un ente él solo. En su espacio hace y deshace, pero no sale de ahí, así que podrás incluir lo que quieras en la misma página, fuera del div que baraja él.

Salu10.

[ # 21359 ] Comment desde Diego [08 de Mayo de 2008, 01:40]

hola yo hace mucho tiempo trabaje un poco con php, pero ya no me acuerdo de nada, me vaje el archivo lo coloque en la carpeta raiz local sin subirlo al sitio, y lo que hace cuando lo llamo el abrirme la ventana de descarga de archivo, no se si es que es necesario que este subido al sitio o que yo soy demasiado torpe jeje…

[ # 21360 ] Comment desde Diego [08 de Mayo de 2008, 01:55]

perdon por las molestias ya me respondi yo solo, lo he subido al sitio y va de maravilla. gracias por poner estas cosas tan valiosas al alcance de todos

[ # 21361 ] Comment desde Xavi [08 de Mayo de 2008, 02:10]

De nada Diego, si es válido para uno, porqué no puede serlo para muchos?

Salu10.

[ # 21365 ] Comment desde Diego [08 de Mayo de 2008, 03:03]

perdona otra vez, esta vez lo he intentado de todas las formas posibles a mi alcance antes de recurrir a ti, cuando pincho en album me abre una pantalla con un monton de carpetas que no se de donde las saca porque estuve mirando en la raiz del servidor y no estan, y no me deja abrirlas.

[ # 21380 ] Comment desde Diego [08 de Mayo de 2008, 07:13]

otra vez yo, ya lo solucione, aunque no de la manera mas efectiva pero alomejor te puede ayudar a resolverlo a ti, lo que hice fue esto en la linea 462:
$dir_path.= ‘../imagenes’;
$buffer.= ‘<a href=”‘.$script_url.’?action=change_folder&to=’.urlencode($dir_path).’” title=”Back To Album” rel=”nofollow”>’.

dado que la carpeta contenedora de la galeria de fotos se llama imagenes.

[ # 21432 ] Comment desde Xavi [09 de Mayo de 2008, 08:16]

Vale, veo el problema.
El script está pensado para emplazarlo DIRECTAMENTE en la ubicación dónde tienes las fotos. Por lo que veo, ahora tienes el script en un path y las fotos en otro.

Me alegro que hayas encontrado tu propia solución ;) Ventajas del PHP.

Salu10.

[ # 31547 ] Comment desde nico [09 de Agosto de 2008, 07:32]

El Scrip anda de pelos… espero ansioso las actualizaciones. La lista ToDo es muy interesante, pero si no les molesta, tengo un par de deseos para agregar a la lista que podrian evaluar.
Estaria bueno que un dia de estos alguien se cope y le agrege una forma de hacer que lea un txt que este dentro del dir de la galeria con comentarios para las fotos y las galerias en particular para saber que estamos por clicar.
Tambien estaria bueno que las galerias puedan ser identificadas con una imagen, que los tumbnais de las carpetas respondan a una imagen (que tal que lea una .jpg llamado icon dentro del dir de la galeria o algo por el estilo).
Y como ultimo deseo, algo sublime seria que en la ampliacion de la foto halla un filmstrip con los tumbnails para seguir navegando sin volver…
Amigos, orgulloso dejare vuestro link al pie de la pagina. Saludos.

[ # 31771 ] Comment desde Xavi [11 de Agosto de 2008, 07:52]

@Nico: merci por las ideas. La verdad es que mi intención para las próximas versiones era que buscara un archivo XML en el directorio del servidor con comentarios, títulos de imagen, imagen para el álbum, …

Agradezco el feedback!

[ # 36502 ] Comment desde JotaMachuca [19 de Septiembre de 2008, 03:42]

Holas

Era justo lo que necesitaba!!!! Muchas gracias, todos los que vi o eran muy complejos, o eran muy simples… pero con esto, logre hacer una galeria para mi familia rapida, y efectiva.

Lo que si, si comentas algo mas el código para tratar de modificarlo. Mira, me gustaria dejar los thumbail en disco, y recuperarlos de ahí si es que no existen… bueno quizas mas adelante haga eso.

Gracias por dejar disponible tu codigo

[ # 45038 ] Comment desde jose [15 de Noviembre de 2008, 11:30]

Saludos a todos:
Gracias por el scrip ante todo pero como soy un novato total a ver si me podeis resolver algunas (muchas) dudas os digo lo que hago:

he puesto el script (index.php) en una carpeta dentro del apache que contiene 5 fotos mpg como prueba tal y como viene el script es decir sin tocar nada y redirigido el httpd.comf de apache para que me apunte a esta carpeta cuando tecleo localhost. Hasta aqui bien pues cuando tecleo localhost me aparece la linea de credito del script (he incluido la palabra hola para estar seguro incluso) pero no aparecen ninguna de las 5 fotos de prueba. ¿Que tengo que cambiar en los “defines”? Estoy funcionando con el Appserver que lleva incluido tambien php y Mysql pero me temo que no se bien como configurarlo. Me he hecho otros albumnes con dreamweaver he incluso mezclado diferentes plantillas en htlm pero cada vez que tengo que incluir una foto mas es un follon:
¿Que lineas tengo que retocar? por ejemplo
326 aqui tu url ej:(http:// tudireccion.com)
450 nombre de la carpeta de fotos (pe: fotosdiadecampo o como se llame)
560 y 640 el Path (C:\ Appserver\www \fotosdiadecampo.
No se si me he explicado bien. Muchas gracias de antemano y por el script

saludos de un negadillo Jose

[ # 45039 ] Comment desde jose [15 de Noviembre de 2008, 11:33]

Lo de “configurarlo” me refiero al script NO a php que ya viene configurado.

Saludos
jose

[ # 45250 ] Comment desde Xavi [17 de Noviembre de 2008, 08:32]

Buenas.

Lo único que debes hacer es modificar el define que apunta al directorio dónde están las carpetas con las fotos. Después simplemente debes poner fotos distribuidas en carpetas y listo. No debes modificar ninguna línea más del código. El script no tiene soporte de plantillas, así que no es necesario que prepares nada con el dreamweaver.

Salu10.

[ # 45316 ] Comment desde jose [17 de Noviembre de 2008, 09:42]

hola otra vez, si eso ya lo hice pero como comento solo me sale la tabla verde pero sin los thumb aunque si creo una carpeta al azar si sale su icono he probado ahora con el 0.1fotos php y con este me sale la tabla verde con los espacios de los thumb vacios en propiedades me dice que el tamaño del archivo es 0 bites y sin embargo si linka a la foto grande.La estructura del servidor es la siguiente:

c:\appserver\www\(nombre de la carpeta) y dentro de ella 4 fotos mpg + index.php +log.txt + carpeta cache (por cierto que esta carpeta no aparece en la tabla y cualquier otra que yo cree sí. Curioso no?

Bueno un saludo y gracias por la rápida respuesta anterior.

jose

[ # 46544 ] Comment desde jose [26 de Noviembre de 2008, 04:07]

alguien sabe por que no salen los thumbnails?

gracias

Jose (trabajando con la v 0.1)

[ # 47686 ] Comment desde semper [10 de Diciembre de 2008, 05:42]

Buenas, veo que hace mucho tiempo que se hizo pero me gusto el script mucho es poco muchisimo,a mi no me sale el titulo de la pagina que contiene las fotos y ademas al darle al enlace album me salen todos los directorios , si alguien me escucha porfa me diga como solucionarlo.
gracias

[ # 54409 ] Comment desde javi [11 de Enero de 2009, 12:47]

Hola. Me parece que el script está muy bien. Pero hay una cosa que creo que le vendría muy bien.
Me parece que ayudaría a ganar tiempo y a que el servidor tenga menos carga guardar las imagenes de vista previa en algún directorio creado a ese efecto.
Por lo demás, perfecto. Antes utilizaba un script en el que había que ir cargando los index para cada página y creo que esto me va a simplificar mucho lo de poner nuevas fotos.
Un saludo y gracias por publicarlo.

[ # 66501 ] Comment desde Ivan [04 de Abril de 2009, 09:15]

Este scritp le quita calidad a las imagenes, como arreglarlo?

Escribe un Comentario





Estadísticas