Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Base de datos para galeria fotográfica

Estas en el tema de Base de datos para galeria fotográfica en el foro de Mysql en Foros del Web. Tengo hecho un diseño de una pagina web fotografica en html y ahora quiero rehacer la pagina en php que acceda una base de datos ...
  #1 (permalink)  
Antiguo 01/09/2012, 08:53
 
Fecha de Ingreso: diciembre-2009
Mensajes: 36
Antigüedad: 14 años, 4 meses
Puntos: 1
Base de datos para galeria fotográfica

Tengo hecho un diseño de una pagina web fotografica en html y ahora quiero rehacer la pagina en php que acceda una base de datos mysql con un formulario donde ir guardando toda la información. Mi idea es no usar plugins o similares ya que quiero mantener mi diseño.

La idea es un poco una galeria principal http://www.marcadamus.com/gallery.php
una galeria secundaria con miniaturas de las fotos http://www.marcadamus.com/gallery.php?gallery=newwork
y una ultima pagina donde se muestre toda la información y la foto http://www.marcadamus.com/photo.php?id=508&gallery=newwork
os pongo el ejemplo de esa pagina ya que es en la que me he basado y mi diseño es muy parecido, no es un plagio lo que quiero hacer pero casi jeje, lo digo para que entendais un poco mejor mi idea.

Primero quiero hacer una base de datos donde meta toda la información (titulo, lugar, descripcion, precio, tags...) y las fotos o la direccion donde se encuentran las fotos (si puede ser a traves de un formulario). Creo que con dos tablas una para la galeria y otra para las fotos me puede llegar. A ver que me aconsejais. El paso del php lo dejamos para más adelante si no os importa, para ir paso por paso. En el campo foto no se que tipo tendré que poner.

No os hago ninguna pregunta en concreto para que me deis una opinión de lo que harias o no, ya que soy novato en esto y no tengo apenas conocimientos.

Saludos y muchas gracias.

Última edición por pepe7000; 01/09/2012 a las 09:00
  #2 (permalink)  
Antiguo 01/09/2012, 10:20
Avatar de antoniopol  
Fecha de Ingreso: agosto-2012
Ubicación: Valladolid
Mensajes: 114
Antigüedad: 11 años, 8 meses
Puntos: 21
Respuesta: Base de datos para galeria fotográfica

Pues yo como dices tu haría dos tablas:
GALERIA
----------
id
titulo
lugar
descripcion
precio
ruta_img

IMAGENES
-------------
id_img
id_galeria
ruta_imagen

Yo suelo poner la ruta en un campo varchar 255. La idea que te propongo, es que la galería tenga una imagen principal que se mostrará en tu galería principal, y una vez dentro de cada articulo, pues qeu aparezcan las imagenes "secundarias" sacadas de la tabla imagenes. Se peude hacer de muchas maneras pero yo te recomendaría esta, me gustaría leer mas opciones para aprender yo también otras ideas.
__________________
>> Blog de desarrollo web.
>> @antoniopol06 amante de la Web =D
  #3 (permalink)  
Antiguo 01/09/2012, 10:41
 
Fecha de Ingreso: diciembre-2009
Mensajes: 36
Antigüedad: 14 años, 4 meses
Puntos: 1
Respuesta: Base de datos para galeria fotográfica

Mi idea, más bien, es:

GALERIA
----------
id
descripcion
titulo
miniatura (al pinchar en la miniatura abririamos la foto con toda la info, no se a que punto de la otra tendría que vincularlo, si es que fuese necesario)


IMAGENES
-----------
id
foto o ruta_img como tú comentas
titulo
lugar
descripcion
precio
tags


Gracias por la ayuda. Saludos
  #4 (permalink)  
Antiguo 01/09/2012, 10:47
Avatar de antoniopol  
Fecha de Ingreso: agosto-2012
Ubicación: Valladolid
Mensajes: 114
Antigüedad: 11 años, 8 meses
Puntos: 21
Respuesta: Base de datos para galeria fotográfica

No esta mal la idae, pero creo que necesitarías otra tabla a mayores para las imagenes secundarias, ya que ahí cada imagen va a tener un titulo, descripcion y precio, y me imagino que querrás que de un mismo artículo tenga varias imagenes, y creo que así no estaría bien estructurado.
__________________
>> Blog de desarrollo web.
>> @antoniopol06 amante de la Web =D
  #5 (permalink)  
Antiguo 01/09/2012, 10:50
 
Fecha de Ingreso: diciembre-2009
Mensajes: 36
Antigüedad: 14 años, 4 meses
Puntos: 1
Respuesta: Base de datos para galeria fotográfica

No no jejeje no son artículos, solo son imagenes, y cada una se mostrara en solitario. Si ves el ejemplo que puse en mi primer post lo entenderás, solo es una galería fotografica donde vender las propias fotos. Saludos
  #6 (permalink)  
Antiguo 01/09/2012, 15:04
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: Base de datos para galeria fotográfica

No lo veo así:
Me parece que con una tabla imagenes, otra temas y una tercera de temasimagenes, además de una par de tablas para tags tendrás suficiente.
No entiendo lo de galerías. Si te refieres a los temas que agrupan las imágenes, una tabla de temas y otra tabla para temas de las imágenes bastará.

imagenes

idImagen
titulo
idlugar
descripcion
precio
rutaImagen (si solo una foto por cuadro)
rutaMiniatura (si solo una foto por cuadro)

temas

idTema
tema

temasimagenes
idTemaImagen
idTema
idImagen
sinoenc (marcar con 1 las imágenes que sean cabecera de cada tipo, si no quieres elegirlas aleatoriamente)

tags
idTag
Tag

tagsimagenes

idTag
idImagen

La que llamas galería principal no es más que sacar una de cada tema, aleatoriamente o tal vez podrías marcarlo en la tabla con un campo como ese sinoenc

Entiendo que los tags no son los temas, grupos o galerías, sino otra marca para imágenes y que una imagen puede contar con ninguno, uno o varios tags, y que luego podrán buscarse.

Acláranos la diferencia entre galería, tema y tag... y podremos orientarte mejor.
  #7 (permalink)  
Antiguo 01/09/2012, 20:20
Avatar de KsrZ  
Fecha de Ingreso: abril-2011
Ubicación: /home/KsrZ/Desktop
Mensajes: 156
Antigüedad: 13 años
Puntos: 26
Respuesta: Base de datos para galeria fotográfica

porque no donde dice "foto" o "ruta_img" no colocan un separador para multiples imagenes de un mismo tipo.. ej
./lalala/blah/IMAGEN1.png]]__[[./lalala/blah/IMAGEN2.png]]__[[./lalala/blah/IMAGEN3.png
y desde php mandas un explode(']]__[[',$fs['foto' o 'ruta_img']);
..?
__________________
for (var i = 0; i < 2; i++){
i = !confirm("Trata a tu código como a ti mismo.. este te esta representando.. no te dejes mal parado")? 0 : i;
}
  #8 (permalink)  
Antiguo 02/09/2012, 02:09
 
Fecha de Ingreso: diciembre-2009
Mensajes: 36
Antigüedad: 14 años, 4 meses
Puntos: 1
Respuesta: Base de datos para galeria fotográfica

El diseño de la web sería así:

1º una pagina principal con referencia a las 9 galerias
2º al entrar en una de esas galerias saldrian las miniaturas de todas las fotos de esa galeria
3º entrariamos en la foto con toda su info

Jurena creo que no dije nada de temas jeje, los tags me refiero mas bien a keywords, que pondria al meter la info pero que luego no aparecerian en la pagina al ser visionada, (un poco pensando en el posicionamiento web y que sean más faciles de encontrar las fotos desde un buscador).

Mi idea es desde un formulario o desde la base de datos directamente, meter una foto con su info y que luego aparezca la miniatura en su respectiva galeria.

GALERIA
----------
id
descripcion
titulo_galeria
miniatura (al pinchar en la miniatura abririamos la foto con toda la info, no se a que punto de la otra tendría que vincularlo, si es que fuese necesario)


IMAGENES
-----------
id
foto o ruta_img como tú comentas
titulo_galeria
titulo
lugar
descripcion
precio
tags

Creo que metiendo el campo titulo_galeria ya tendria por donde referenciar las tablas y que pudiera ocurrir lo que yo quiero. A ver que decis.

KsrZ aún estoy muy perdido en php todavía, al mandar ese explode aparecería solo una foto o todas??

Saludos y gracias a todos por la ayuda
  #9 (permalink)  
Antiguo 02/09/2012, 03:02
 
Fecha de Ingreso: diciembre-2009
Mensajes: 36
Antigüedad: 14 años, 4 meses
Puntos: 1
Respuesta: Base de datos para galeria fotográfica

Me recontesto. Creo que ahora ya lo tengo claro de todo, me falta saber como hacer que funcione.

Las tablas serían, según lo he hecho en access:

GALERIA
----------
*titulo_galeria
descripcion de la galeria
miniatura (campo:hipervínculo) direccionando a donde está la foto guardada


IMAGENES
-----------
*id
foto (campo:hipervínculo) direccionando a donde está la foto guardada
titulo_galeria
titulo de la foto
lugar
descripcion de la foto
precio
tags
miniaturas (campo:hipervinculo) direccionando a donde está la foto guardada

-esto lo relacionaria entre titulo_galeria para que al meter la información en la foto me saliera un campo desplegable de las diferentes galerias que tengo.

Según puse en el post anterior:
1. En la primera página aparecerian los 9 titulo_galeria con sus correspondientes 9 miniaturas
2. Al pinchar en una de esas miniaturas iriamos a la galeria en concreto donde apareceria titulo_galeria+descripcion galeria+todas las miniaturas de las fotos de esa galeria
3. Y al pinchar en una de esas miniaturas entrariamos en la foto en concreto donde tendriamos toda la info de la foto que hemos puesto en la tabla imagenes.

En access me funciona bien jeje, sería hacer un formulario para meter toda la info y una consulta para el punto dos para ver todas las miniaturas, ahora queda lo más dificil para mi, llevar esto a mysql y despues a php. Así que si me vais dando algun consejo se agradece.

Saludos y gracias
  #10 (permalink)  
Antiguo 02/09/2012, 04:45
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: Base de datos para galeria fotográfica

GALERIA
----------
*titulo_galeria
descripcion de la galeria
id (observa que este id es FK del id que es PK en IMAGENES). Es lo mejor. Con él podrás traerte todos los datos mejor que con la dirección. Y también podrás traerte la dirección URL de la imagen, sea la de tamaño normal o la miniatura. Así es como se hace en bases relacionales y verás que al final es mejor.


IMAGENES
-----------
*id
foto (campo:hipervínculo) direccionando a donde está la foto guardada
titulo_galeria
titulo de la foto
lugar
descripcion de la foto
precio
tags
miniaturas (campo:hipervinculo) direccionando a donde está la foto guardada

Pero sigo viendo problemas. Si una imagen puede pertenecer a más de una galería, y creo que eso ocurrirá, será mejor que prepares todo para ello y uses una tabla de imagenesgaleria con los campos id y titulo_galeria

Otra cosa es lo de los tags. No te recomiendo un campo multivaluado. No es de recibo para bases relacionales. Mejor sería, en mi opinión, una tabla de tags y otra de tagsimagenes, como te dije.
  #11 (permalink)  
Antiguo 02/09/2012, 05:15
 
Fecha de Ingreso: diciembre-2009
Mensajes: 36
Antigüedad: 14 años, 4 meses
Puntos: 1
Respuesta: Base de datos para galeria fotográfica

Cada imagen solo podrá pertenecer a una única galería, no quiero tener duplicados. Lo de los tags te entiendo lo que me quieres decir, pero pretendía hacer una cosa así [URL="http://www.widerangegalleries.com/images/demo-modify-photo.jpg"]http://www.widerangegalleries.com/images/demo-modify-photo.jpg[/URL], lo que en la imagen aparece como keywords y tags juntalos en un solo cuadro. Crees que sería posible en una tabla hacer eso de alguna manera?? la verdad ahora me has metido en una duda de que hacer, pero es que lo del cuadrado donde meter todos los tags me parece más práctico a la hora de meter la información en el formulario, ya sabes que estos tags no pretendo que sean visibles al visualizar la web, solo quiero que ayuden a encontrar las imagenes mas facil desde cualquier buscador.

Creo entender lo que me comentas del id, pero cuando se muestran todas las galerias cada una solo tendra una imagen de referencia, y será cuando entremos en una galeria en concreto cuando necesito que me aparezcan todas las miniaturas y creo que desde php pidiendo que me muestre todas las miniaturas cuyo titulo_galeria sea "x" me deberían aparecer todas. Por esto creo que la relación debe ser entre titulo_galeria y titulo_galeria.

Corrigeme en lo que veas que estoy equivocado, que esto de no usar las cosas uno se queda oxidado.

Saludos y gracias.
  #12 (permalink)  
Antiguo 02/09/2012, 08:56
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: Base de datos para galeria fotográfica

pepe7000,
mi opinión es que no debes usar la imagen en la tabla galerias, sino el id de la imagen, que te permitirá traerte la imagen, pero también el título o lo que quieras para añadirlo, incluso como fondo de la imagen o en el title. También es mejor para la administración. Piensa en cómo armarás el selector para asignar una imagen concreta a una galería y verás que el id como value será lo mejor.
Si solo vas a guardar una imagen en una galería, tu estructura estaría bien por lo que atañe a ese punto, aunque yo no cerraría las puertas. Imagina que mañana quieres mostrar para cada galería un slide de imágenes de esa galería pasando cada x segundos. Pues bien, eso ya no podrías hacerlo luego sin modificar las tablas en el sentido propuesto o programar innecesariamente.
Respecto a los tags y keys, todo depende de cómo busques. Si sólo vas a buscar una palabra, podrás hacerlo, pero al mostrar los tags tendrás que mostrar todos los de esa cadena, aunque con programación todo puede resolverse, claro. Será además más difícil de administrar, aunque es verdad que con mi propuesta alguna consulta sobre dos tags o más será algo más complicada quizás de lo que esperas. No obstante, mi recomendación es no crear campos multivaluados con valores separados por coma, aunque soy consciente de que un índice full text te ayudaría en las búsquedas de los tags en un campo multivaluado y si eres tú quien los escribe, su administración resultará sencilla, aunque eso podría llevarte a escribir un tag de muchas maneras, ej. montaña, montañas, monte, montículo, elevación, etc. Mantener una tabla independiente te obliga a estructurar el uso de esos tags.

Última edición por jurena; 02/09/2012 a las 09:05

Etiquetas: galeria, php, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:27.