Galeria de Fotos en Flash y PHP (con thumbs GD) y lectura de folders.


Hace mucho tiempo tuve que crear una galería de fotos en flash y PHP ( que me saco de muchos apuros ).

Lo particularmente bueno de esta galería es que levanta las fotos on the fly desde carpetas del servidor que creemos o ya estén creadas. Entonces el cliente mismo puede generar galerías de fotos simplemente creando carpetas por FTP y haciendo copy paste de las imágenes que desea subir. Algo muy practico y sencillo para los clientes no entendidos.
Mi propósito principal fue evitar que alguien tenga que editar un FLA… o un XML o mas engorroso aun tener que armar un admin con upload para el manejo de la galería.

Características de la galería:

  • Usa Flash para precarga de fotos.
  • Lee varias carpetas de fotos.
  • Paginación de fotos (20 x página).
  • Librería GD de php para generar los thumbs con cacheo para agilizar la carga.
  • No usa base de datos ni XML.
  • Fácil configuración y mantenimiento.

Dentro de la carpeta «galery» debe haber 5 archivos y 1 carpeta llamada «images». Se recomienda no cambiar el nombre de la carpeta. (De lo contrario la galería no funciona).

galery_tech_nico.fla
Archivo editable de Flash contenedor de la galería de fotos.

galery_tech_nico.swf
Este archivo es la galería de fotos compilada y lista para embeber en tu web.

folderImages.php
Recibe como parámetro un string («nombre de carpeta») y recorre en el servidor las imágenes que esta contenga. Finalmente devuelve sus rutas a flash.

folders.php
Recorre todo el directorio «images» y devuelve a flash los nombres, rutas, tamaño de cada una de las fotos y además la cantidad de fotos por directorio.

thumb.php
Recibe varios parámetros como alto, ancho, etc. y devuelve la imagen resampleada para generar los thumbnail de la galería.

INSTALACION:
1) Editar archivo galery_tech_nico.fla.
Escribe el nombre de tu dominio

2) Editar folderImages.php y folders.php.

Esta versión también tenia para postear comentarios en las fotos. Pero esa parte usa una base de datos MySQL así que verán que en el archivo de flash esta comentado. (Si alguien los necesita subo los archivos.).
Se que tiene muchas cosas por mejorar, pero ya cumplió su ciclo :P.

GALERIA CON COMENTARIOS:
http://www.tech-nico.com/blog/galeria-de-fotos-flash-con-comentarios-php/

descargar galery

Nicolas
______________________
www.tech-nico.com/blog

72 comentarios en “Galeria de Fotos en Flash y PHP (con thumbs GD) y lectura de folders.

  1. hola, esta buena la galeria te queria preguntar si podes postear la galeria con la base de datos para los comentarios de las fotos.

    Gracias

  2. Buena galería. Lo malo es que yo necesito una para asp. No entiendo mucho (poco en verdad) de PHP.

  3. Charlos: La galeria esta en PHP mas bien por el auto-resize de las fotos que permiten las librerias GD. En ASP es bastante dificil de lograr un auto resize «on the fly». Particularmente me inicie programando en ASP y despues de unos años me termine pasando a PHP por la cantidad de recursos, utilidades, rapidez… costos… etc.
    Si te animas a traducir el codigo a ASP podes ir posteando aqui mismo y en lo que este a mi alcance te voy a ir ayudando.
    Lo unico que tendrias que hacer es reemplazar los archivos PHP por los tuyos en ASP y luego cambiar solo las rutas en el FLA.
    Saludos.
    Nico

  4. Hola amigo, estoy tratando de probar tu galeria, pero no logro que funcione. puse el swf en una pagina html. Luego modifique las rutas en los php, y subi todo a mi public_html pero me abre el swf y no me carga las fotos. Que sera ? me das una ayuda ? quizas no estoy poniendo bien la ruta, como seria la ruta ? Muchas Gracias.

  5. Hola Fernando, las ubicaciones de los archivos te tiene que quedar asi:

    public_html/galery/images <--carpeta public_html/galery/folderImages.php public_html/galery/folders.php public_html/galery/galery_tech-nico.swf public_html/galery/thumb.php y en los 2 archivos PHP pone la ruta completa hacia "public_html/galery/images" Ejemplo para los PHP: "/var/www/tusitio/public_html/galery/images" Cualquier cosa avisame. Saludos. tech-nico.com

  6. Hola, me parece interesante tu galeria pero he tenido problemas al subirla. Quiero probarlo en miarroba pero no he logrado subirlo.
    * galery_tech_nico.fla. he colocado http://recuadro.webcindario.com
    * folderImages.php y folders.php. he colocado /home/webcindario/r/e/recuadro/galery Tambien
    recuadro.webcindario.com/galery pero con ninguno funciona.
    No se si me podrias ayudar con eso por favor.
    Otra cosa, ya no es necesario crear ningun index?
    De antemano t agradezco

  7. Hola Dany, seguro el problema esta en las rutas de los PHP. Cuando usas un servidor gratuito, lo que te conviene hacer es subir un php con
    y revisar alli que ruta tenes; porque casi seguro te esta faltando algo.
    Tambien proba escribir la ruta asi:

    home/webcindario/r/e/recuadro/galery

    Sin la «/» que tenias delante de Home.

    Saludos
    tech-nico.com

  8. Hola Nico, excelente galeria, ideal para clientes con conocimientos MINIMOS de Web… creo que tengo el mismo problema que DANNY, ya le he probado todas la variantes a la ruta y no me muestra las fotos.. solo me dice: undefined(undefined)

    Saludos desde la Isla de Margarita, Venezuela.

    Daniel N.

  9. Daniel. Me alegra que te sea de utilidad! esa es la idea!!.
    Me gustaría que hagas la siguiente prueba:
    Ingresa en el notepad de windows y pega lo que esta entre comillas ««, pero sin incluir las comillas. Luego lo guardas como «prueba.php», lo subes a tu hosting por FTP y finalmente lo ejecutas para analizar lo que te arroja. Con eso podras chequear 2 cosas:
    1) Si tu servidor tiene la libreria GD instalada. Fijate en los modulos o haciendo Search de «GD».
    2) Fíjate cual es la ruta completa donde se alojan los archivos. Porque quizas te esta faltando agregar algo en las rutas.
    Por lo general en todos los servidores de hosting compartidos. Las rutas son bastante largas como «/var/www/nombresitio/public_html»

    FINALMENTE REVISA ESTO:
    Abre el archivo «.fla» en Adobe Flash y presiona «Ctrl+Enter» (para *publicar/compilar la galeria) y pega aqui lo que arroja en OUTPUT. Lo mismo para el otro DANNY.

    *publicar/compilar: esto genera un nuevo archivo .swf Sobre-escribiendo el anterior. Recuerden que deben volver a subirlo por FTP luego de modificar y compilar.

    Saludos
    tech-nico.com

  10. hola nico, excelente galeria, no he podido probarla por que cuando intento abrir el archivo .fla me da un error, me dice formato inesperado, tengo flash MX. que puede ser eso?

  11. Julio: Creo que me olvide de especificar que el archivo esta guardado en flash 8.
    Descarga la versión 8 o CS y lo vas a poder abrir sin problemas.

    Saludos
    tech-nico.com

  12. Hola nico, lo probe con flash 8.0 que tengo instalado mi PC desktop y me da error tambien, me dice formato inesperado

  13. Gracias Niko, ya lo baje, lo pruebo en casa, queria aprobechar este espacio para hacerte otra consulta, estoy haciendo una pagina que tiene 5 botones, cada boton llama una pelicula externa, esto lo hice asi por q inicialmente la tenia toda en una y era muy pesada, bueno lo que quiero es que cuando abra la pagina automaticamente me llame una pelicula externa que es la misma del primer boton, pero quiero que ingrese en esa automaticamente cuando inicie la pagina, la pregunta es como puedo hacer que carge esa pelicula automaticamente al iniciar la principal?, la que tengo montada actualmente es la que esta en una sola (la pesada) si quieres le echas un ojo y me dices. http://www.brickellbunker.com.ve , gracias de antemano

  14. Hola, bueno buen aporte el que publicas, bueno me gustaria tambien con la base de datos para los comentarios de las fotos. espero que animes lo mas antes posible. 🙂

  15. Pingback: Blog tech-nico.com » Galeria de Fotos Flash II con Comentarios

  16. Hola! Gracias por la ayuda q nos das NIco! Te queria preguntar como hace el cliente para subir fotos??
    Gracias!

  17. Hola!
    Tengo un flash en actionscript 2.0 que coge las imágenes de un xml.El caso es que yo quiero que las coja de una carpeta de un hosting, cómo deberia de modificar solo los *.php, usando el flash que he diseñado??Es posible?Muchas gracias

  18. Bn. proba con phpinfo(). que esta en una de mis respuestas. Con eso vas a obtener cual es la ruta completa de tu Hosting.
    Saludos.
    Nico

  19. Hola que tal mira no me queda claro unas cosas.

    yo tengo un dominio que es : http://www.dominio.com
    y quiero subir tu ejemplo a la carpeta «ejemplo»

    desde el .fla cambio la direccion tuya por:
    pat = «http://www.dominio/ejemplo»;
    imagePat = «uploads/»;

    donde dice uploads que pongo? la carpeta donde estaran las imagenes a usar ?

    Otro punto mas, cuando hay que cambiar la ruta esta:
    $ruta_galeria = «/home/technico/public_html/multimedia/Image/galeria/»;

    te refieres ah que hay que poner la ruta de «ejemplo»
    o la ruta de la carpeta de imagenes que estaria dentro de ejemplo.
    en tu ejemplo hay 2 carpetas dentro de images.

    Saludos, si podes enviame un email porfavor asi te consulto por algo.

    desde ya muchas gracias.

  20. Hola Antho, esta bien.. te explico:

    pat = “http://www.dominio.com/ejemplo”; < estaria bien!.
    imagesPat estaba para un futuro uso. Por lo tanto es inutil que lo cambies.

    ATENCION: si usas la carpeta "ejemplo"; dentro de esa carpeta SI O SI deberia estar la carpeta "galery" tal cual la descargaste de aqui.

    entonces las galerias de imagenes deberias subirlas a:
    /ejemplo/galery/images/galeria1/imagen1.jpg
    /ejemplo/galery/images/formula1/auto.jpg

    Fijate que en los comentarios resolvi bastantes dudas;
    Te copio lo que le respondi a otro colega:

    public_html/ejemplo/galery/images <–carpeta
    public_html/ejemplo/galery/folderImages.php
    public_html/ejemplo/galery/folders.php
    public_html/ejemplo/galery/galery_tech-nico.swf
    public_html/ejemplo/galery/thumb.php

    y en los 2 archivos PHP se pone la ruta completa hacia “public_html/ejemplo/galery/images”
    o en otro hosting podria ser: “/var/www/tusitio/ejemplo/galery/images”
    La ruta completa NO es la que accedes por web como http://www.dominio.com. Tambien sugerí en otro comentario que suban un archivo con el comando phpinfo() y ahi veas cual es la ruta larga.

    Cualquier cosa avisame. Saludos.

    tech-nico.com

  21. Hola nico muy bueno lo aportado tengo unos problemas yo estoy trabajando localmente con el appserver y bueno no logro cargar la foto y nose como encontrar la ruta de mi servidor local te agredeceria mucho me des la solucion

  22. Ivan: gracias. fijate ejecutando phpinfo() dentro de un archivo php. Que ahi te tiene que dar la ruta absoluta de tu PC. c:/appserver/sitio1/ o algo por el estilo.

  23. hey, sabes que intente todo lo que dices aqui, pero no logro que se carguen las fotos…
    ya nose que mas hacer 🙁
    muy buena galeria!!!
    saludos
    juan

  24. Hola Juan. Te fijaste en otros post como van las rutas?. No es complicado.
    Te funciona el PHP? saludos.

  25. la verdad que si, intenté de todas las formas pero creo que algo estaría haciendo mal, tambien subi el info.php… pero nose si doy con la ruta correcta!
    muschas gracias por tu respues,
    saludos
    juan

  26. Pone un ejemplo de como estas escribiendo las rutas y te digo si veo algo mal.
    Saludos. Tech-Nico.com

  27. hey, bueno ya lo ultimo que estaba poniendo era algo asi:
    /usr/local/public_html/pb-arquitectos.com/galery/images/
    habia probado con el www/pb-arquitectos….
    nada funciono…
    tal vez algo estoy haciendo mal de entrada
    pero tengo todos los archivos asi como dices vos en la carpeta galery!

    muchas gracias!!
    un saludo
    juan

  28. Ya logre conectarlo! muchisimas gracias esta muy bien la galería!!
    lo único que estoy intentando ahora es ver si puedo hacer un slide como menu de las galerías, puesto que si pones mas de un determinado nro de galerías se van de la pantalla!
    gracias por este tuto!
    saludos
    juan

  29. No me va!!
    Ya he probado todo!!

    En el flash (versión 8):
    pat = «http://midominio.com/»;
    imagePat = «uploads/»;

    /* ahí no sé si debería poner «images» en lugar de «uploads»?? ya que la carpeta de las imágenes se llama images.
    */

    En folders.php y folderImages.php:
    home/midominio/domains/midominio.com/public_html/migaleria/images

    /* la ruta la he sacado con phpinfo();
    ya he probado de mil formas pero me debo estar equivocando en algo!!

  30. Blanco: con respecto a tus dudas, dejame analizarlas y te respondo en estos dias.. Nicolas.
    tech-nico.com

  31. Blanco: el error que tenes es que la ruta que pusiste en folders.php y folderimages.php
    Le falta una barra al inicio y otra al final.. queda asi:
    /home/midominio/domains/midominio.com/public_html/migaleria/images/
    El resto esta bien. La variable imagePat = “uploads/” no esta en uso. Asi que pongas lo que pongas no funciona.

    Saludos.

  32. Blanco: fijate que tengas todo en estas rutas:
    1) public_html/galery/images <—carpeta
    2) public_html/galery/folderImages.php
    3) public_html/galery/folders.php
    4) public_html/galery/galery_tech-nico.swf
    5) public_html/galery/thumb.php

    la carpeta «galery» debe tener exactamente ese nombre. Si no no funciona.

    Para probar si funciona la ruta del php puedes probar esto:
    http://midominio.com/galery/folderImages.php?folder=galeria1
    Donde galeria1 es una carpeta con imagenes en la ruta:
    public_html/galery/images/galeria1/imagen1.jpg
    Si el php se ejecuta bien te va a tirar todos los nombres de las fotos.
    __________________
    Nicolas tech-nico.com

  33. e hecho todo lo que dices y no em salen las imagenes las rutas son asi la normal seria asi:
    /public_html/galery/images

    con phpinfo() seria asi:

    /hmfsw/web/dtcwin160/dominio.com/public_html/galery/images

    y en el flash solo puse mi dominio y ya seria asi
    pat = «http://dominio.com»;

    pero no em salen las imagenes llamo a:
    http://dominio.com/galery/galery_tech_nico.swf

    y no salen las imagenes donde esta mi error aqui

  34. Anselmo: Muy bien la prueba que hiciste te esta diciendo que el PHP esta leyendo perfectamente la carpeta de esa galeria. Ahora fijate si el archivo «folders.php» tiene exactamente la misma ruta.
    Finalmente

    y en el flash solo puse mi dominio y ya seria asi
    pat = “http://dominio.com”;

    Va asi (con una barra al final)

    pat = “http://dominio.com/”;

    Saludos.
    tech-nico.com

  35. ok me sali de 10 pero solo me da un error que no em da los nombres del album sale cual quier cosa ni el album ni las fotos salen con nombres que puede ser

  36. Anselmo: Revisa que no tengas caracteres especiales como ñáéíóú^'»!* en los nombres de las galerías o las fotos, que a Flash no le gustan demasiado.
    Tech-nico.com

  37. cuando salvo el flash me sale esto siempre

    Fonts should be embedded for any text that may be edited at runtime, other than text with the «Use Device Fonts» setting. Use the Text > Font Embedding command to embed fonts.

  38. Anselmo: La galería entonces esta funcionando bien. El problema este en el Input Text dentro de flash. Probablemente le modificaste el Font que traía por defecto.
    Para que la galería sea liviana tiene que usar fonts del sistema. Son las que tienen un ‘ * ‘ (asterisco) pegado a su nombre. Como suelen ser Arial, Helvetica, Verdana, Times.. etc. Son las fuentes que traen todos los sistemas operativos. Quizás en local corre bien. Ademas los input text dinamicos son problematicos con fonts que no son del sistema. Espero que te sea de ayuda. Saludos

    ____________
    tech-nico.com

  39. hola quisiera hacerle una modificacion a ver si podemos y su em ayudas quisiera cuando tu le das a la foto para verla bn grande hay alguna forma de verla con slimbox o algo parecido

  40. hola hay alguna forma de modificarla a ver si s epuede qu ecuando uno el de click en la imagen que abre la pantalla completa me abra en slimbox o algo asi?????

  41. Anselmo: lo que pedis esta hecho!. (Solo que le falta un poco de elegancia).
    Si te fijas, cuando haces click en la fotito chiquita.. la muestra a la derecha.
    Si haces click en la foto de la derecha, abre la foto en una pestaña del navegador. (La abre afuera de flash, en el mismo navegador)
    Supongo que si tendrias seteado algun include JS que te genere alguna ventana con los JPEG los verias en un DIV. «No necesitas ni programar». Saludos.

    tech-nico.com

  42. Hola «Lee», las ubicaciones de los archivos te tiene que quedar asi:

    public_html/galery/images <–carpeta
    public_html/galery/folderImages.php
    public_html/galery/folders.php
    public_html/galery/galery_tech-nico.swf
    public_html/galery/thumb.php

    y en los 2 archivos PHP pone la ruta completa hacia “public_html/galery/images”

    Ejemplo para los PHP: “/var/www/tusitio/public_html/galery/images”

    Cualquier cosa avisame. Saludos.

    tech-nico.com

  43. Muchas gracias, ya me funciona, el problema creo que era que yo ejecutaba el fichero sin las http://www... puede ser??
    algún problemilla….
    – Cuando pones mas de 20 fotos las flechas que tendrian que decir 1 d 5 solo sale el numero 1, luego la pagina 2 o 3.. no se ve el numero.
    – Puedo hacer la imagen lateral mas grande? La intención es ponerla debajo y que se vea mas grande, ya que en el original parece que tenias algún tipo de formulario que no se ve en pantalla… y que tampoco voy a utilizar…
    – Y por ultimo y si no es abusar… que debería ponerle para que vaya mostrando las diferentes paginas… tipo carrusel, automáticamente??

    gracias por todo

  44. Mi problema es que pongo la direccion completa de donde estan las fotos y el flash no las coge… no da error ni dice nada, he probado mil convinaciones posibles y nada… yo no tengo ni public ni nada yo tengo un dominio en plan pepe.com y la galeria la meto en pepe.com/galery
    y dentro estan las fotos pues pongo la ruta completa con http:://pepe.com/galery/images…
    y nada no lo pilla… puedes responderme ahora?

  45. Hola Mario, no. Esa no es la Ruta. No leiste los comentarios? Tenes que subir un archivo con extencion php con lo siguiente:

    <?php
        phpinfo();
    ?>
    

    Le pones el nombre de archivo que quieras y lo subes a tu hosting. Luego lo abres en el navegador y ahi veras la ruta completa.
    Saludos, y no dejes de leer los comentarios anteriores, que alli encontraras muchas respuestas.

  46. Pues pongo esto y no va:

    $ruta_galeria = «/kunden/homepages/26/d413126031/htdocs/olgapla.es/galery/images/»;

  47. Perdon pero no lo recuerdo. (esto lo escribi en el 2009).Ya fue explicado. lee los comentarios . Saludos.

  48. Pues jo que pena pues en internet no encontre ningun otro sistema para colgar fotos automaticamente y que pueda admitir carpetas y subcarpetas 🙁

  49. Mario, el sistema esta funcionando!!. El codigo esta abierto para que lo edites, modifiques, mejores a tu antojo. Ya te ayude con todo lo que pude. Si no te funciona es porque te estas equivocando. Tendras que seguir quemandote las pestañas mi amigo. Un saludo desde Argentina.

  50. para que funcione solo tengo que modificar la ruta en los dos ficheros, no tengo que tocar nada ni en el flash ni en la carpeta de fotos que viene como ejemplo? entonces es la ruta lo que me falla… no se por que no lo programasteis con ruta sencilla y no con toda la ruta 😛

  51. Mario, por favor lee el articulo. Mira las imagenes(click para agrandar). No estas descubriendo nada nuevo!!! Pero tenes que leer. No quieras descubrir la pólvora. Segui los pasos. Usa el metodo empirico, prueba y error. Pero Lee. Saludos.

Deja un comentario