[Php-avanzado] Consulta para Leo
Leonardo Tadei - Pegasus Tech Supply
leonardot en pegasusnet.com.ar
Jue Nov 5 00:40:06 ARST 2009
Hola Carolina,
El mié, 04-11-2009 a las 20:58 -0300, Silverzero escribió:
> Hola Leo,
>
> Te hago una pregunta,en el momento que te mandé la estructura de la DB
> no me di cuenta, pero acá falta algo o me parece a mi?
>
> Si por ejemplo quisiera publicar un evento para que aparezca en las
> categorias MUSICA y FIESTAS y a su vez especificar que es ACUSTICO
> (subcategoría de música), no tendria que haber en "eventos" campos de
> id_cat y id_subcat ?
No... la normalización no indica esto, ya que definiste en tu
especificación que los eventos están en _una_ categoría/subcategoría y
no en varias.
> Y en ese caso, si no sé cuantas categorías y subcategorías el
> visitante puede elegir, como tendría que configurar la tabla? Porque
> no estaría bien que haya un campo con N categorias separadas por coma,
> asi ya dejaría de estar normalizada o no?
Es correcto: si ponés más de un valor por campo, ni siquiera estás en
1NF !
> De ultima podria poner un límite de eleccion de 3 categorías...pero
> con las subcategorías son muchas más...tendria que poner tantos campos
> como el máximo de subcategorías?
>
> Se me hizo lío...!
>
> Así son las tablas ahora:
>
> ->eventos:
> id
> fecha //fecha de publicacion
> desde //fecha del evento
> hasta
> horario
> titulo
> descripcion
> imagen
> url
> precio
> id_visitante
> id_lugar
> id_stat //activo o inactivo
Lo que te pasa es que la tabla "Eventos" necesita un campo de
"id_subcat" (que si no recuerdo mal estaba en una corrección anterior)
Entonces con el id_subcat, podés relacionar con el id_cat y llegar a la
categoría.
Esto significa que la interfaz con el usuario muestra las Categorías, y
al elegir una muestra las SubCategorías de esa Categoría, pero al
guardar guarda solo la SubCategoría en el evento, ya que vía la relación
se obtiene todo el resto.
> -> eventos_cat:
> id
> nombre
>
> -> eventos_subcat:
> id
> id_cat
> nombre
>
> Gracias Leo.
Por nada!
> Saludos.
=mente!
--
Leonardo Tadei
leonardot en pegasusnet.com.ar
http://blog.pegasusnet.com.ar
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
Más información sobre la lista de distribución Php-avanzado