Cita:
Iniciado por okram
Guardas los ids devueltos en un array. Luego, al ejecutar tu función recursiva, antes de re-ejecutar la función, vez si la categoría que deseas "abrir" se encuentra en el array que has creado. Si no está, no la "abres".
Saludos,
![Adios](http://static.forosdelweb.com/fdwtheme/images/smilies/adios.gif)
1)No es una cuestión de abrir o dejar cerrado N nodos del árbol que no posea productos que hagan match, sino no mostrarlos, Solo debo mostrar los nodos (desde el root) hasta llegar a los productos. Todos los Nodos que no esten relacionados con los productos, no los debo mostar.
2) Si hago lo que me dices, estaría dejando afuera a las categorias padres del producto, o sea:
Ejecuto....:
Código PHP:
SELECT DISTINCT CatId FROM imported_data_copy WHERE ProdName LIKE '%manolo%'
Basandome en esta tabla:
imported_data_copy ( productos )
ImpDatId----CatId---ProdName
1--------------1--------producto pepe
2--------------1--------producto juan
3--------------3--------producto manolo
4--------------3--------producto manolo perez
5--------------6--------producto manolo gimenez
...esto me trae los CatId: 3,6, y entonces:
xxxx0 (CatId=1, CatParentId=0)
->>>>>>>>>>>>NO SE MOSTRARÍA
------xxxx0-2 (CatId=3, CatParentId=1)
xxxx1 (CatId=6, CatParentId=0)
Y yo quiero mostrar xxxx0, dado que está relacionado con el producto, es la categoría "más" superior del producto.
Tienes alguna otra idea?
Muchas Gracias