Foros del Web » Programando para Internet » PHP »

consulta sobre mysql y php

Estas en el tema de consulta sobre mysql y php en el foro de PHP en Foros del Web. Hola amigos, recurro de nuevo a todos ustedes ya que me estan enseñando y ayudando bastante. Estoy implementando php y mysql en mi sitio web. ...
  #1 (permalink)  
Antiguo 07/06/2007, 11:47
 
Fecha de Ingreso: mayo-2005
Mensajes: 257
Antigüedad: 18 años, 11 meses
Puntos: 1
Exclamación consulta sobre mysql y php

Hola amigos, recurro de nuevo a todos ustedes ya que me estan enseñando y ayudando bastante. Estoy implementando php y mysql en mi sitio web.
Tengo dos Base de datos una llamada Productos y Otra Categorias.
La de productos seria asi

id | Nombre_Producto | Id_Categoria
3 Vodka 5
25 Zapatillas Adidas 8
98 Camaras 15
... ... ...


Tabla Categorias
Id_Categoria | Nombre | PARENT
1 Bebidas 0
2 Vestimentas 0
3 Electronica 0
5 Blancas 1
8 Zapatos 2
15 Hogar 3
... .... ...

En la tabla categorias, la la celda Parent = 0 quiere decir que es Categoria y la Celda parent != 0(distinta de 0)dice que es SUBCATEGORIA y a que Categoria corresponde. Me explico?

Ahora el problema es el siguiente, en la tabla categorias, tambien estan anotadas Categorias y subCategorias que NO tienen productos. YO debo imprimir un listado con las categorias y subcategorias (que si tienen productos) seria algo asi:

Vestimentas
-- Zapatos

Bebidas
-- Blancas

etc.

Ahora bien, lo que intente hacer en mi consulta mysql fue primero buscar las categorias que tienen productos y obtener el id de la categoria,

Código PHP:
select DISTINCT categorias.Id_Categoria from categoriasproductos where (categorias.Id_Categoria productos.Id_Categoria
Pero entonces solo obtengo la informacion de las "subcategorias" ya que las Categorias (Parent = 0) no estan anotadas en la Tabla Productos, por consiguiente solo esta sentencia me devolveria:

--Zapatos

-- Blancas

y digamos que tengo la informacion por la mitad. Tienen alguna idea para resolver mi problema?? Nose que mas agregarle a la sentencia SQL estoy intentando pero no me sale.

Desde Ya muchas Gracias
Gabriel
Argentina

Última edición por gabyrsh; 07/06/2007 a las 11:50 Razón: Copié mal las tablas
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 16:49.