Hace cerca de un año Toni y yo nos planteamos un reto PHP: Queríamos un script php que construyera una galería de fotos según una estructura de directorios dada. El reto era que todo debía estar dentro de un sólo archivo php, con lo que tendríamos una galería de fotos extrarápida: subir unas fotos a internet y enchufarle el script php tiene que ser el único esfuerzo. A partir de ahí, se podía complicar la cosa tanto como quisiéramos, pero manteniedo la base de la facilidad, rapidez e individualidad del archivo.
Editado: Hay una version nueva de este script en Galeria de fotos en un unico script. Consulta la pagina del proyecto para estar atento a novedades.
A medida que ideamos funciones el archivo se fué extendiendo (en líneas de código) pero llegamos a tener una buena funcionalidad en un peso de archivo contenido.
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 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.
Demostración:
Éste script se está usando actualmente en la sección de fotos de los sitios web LaDragonera y Honda VTR 250 FanSite.
Descarga:
Este script está en una fase muy temprana. Puedes descargarte la versión 0.1b aquí. Atención: El archivo que se abrirá tiene extensión phps. Debéis cambiarlo a php para que os funcione.
Instalación y Uso:
Para usar este script necesitas tener:
- Servidor web.
- PHP 4 o superior
- Librerías gráficas GD 1.8 o superiores
- Se necesitan derechos de escritura en la carpeta raíz para crear el directorio cache/, o se puede crear a mano dando derechos de escriura al directorio cache/.
Para hacer (TO DO):
- Reprogramar parte de diseño y visualización. Eliminar el exceso de tablas. Usar CSS.
- Soportar más tipos de ficheros (aunque sean de distinto tipo)
- Generar RSS.
- Hacer que funcione el .htaccess
- Poner links de anterior y siguiente en la ficha de la imagen
- Slideshow (por directorio, total, aleatorio)
Historial de Progreso:
- Toni Soler 10/11/2005
- Creación de la versión inicial
- Xavier Arnaus 11/11/2005
- Tratado de tamaños de la imagen, para identificar si es Horizontal o Vertical.
- Solución de nombres de archivo en blanco.
- Toni Soler 11/11/2005
- Leer archivos con tildes y con espacios en blanco en el nombre.
- Generar imagen thumbnail al vuelo, manteniendo la proporción de la imagen original. Para la vista previa
- Toni Soler 30/05/2006
- Recorrer directorios recursivamente
- Xavier Arnaus 31/05/2006
- Englobar items en tablas, i pequeña preparación estètica
- Autocreación e identificación de la existencia de .htaccess
- Toni Soler 31/05/2006
- Incrustar el GIF de directorio como string en base64
- Soporte y creación de .htaccess
- Solución de rutas con acentos
- Xavier Arnaus 01/06/2006
- Posiblidad de descargarse las carpetas en un ZIP
- Xavier Arnaus 24/08/2006
- Corrección para bajar de nivel de consulta del index.php
- Xavier Arnaus 05/10/2006
- Inclusión del nombre de la foto en la ficha indiv.
- Link Trackback a la imagen suelta
- Link “Volver”
- Xavier Arnaus 06/10/2006
- Ordenación de los directorios
- Xavier Arnaus 04/12/2006
- Cache para los thumbnails
- Xavier Arnaus 07/12/2006
- Parámetro $debug para escribir en un archivo log.txt mediante doLog(”string”);
- Mejora cache: se identifica la ruta para la cache.
Tag:
Escribe un Comentario