Comme j'allais vous soumettre un problème, j'ai extrait le code concerné de mon application pour vous faire un petit package.
Et ce faisant, j'ai trouvé ce qui clochait !
Alors comme je ne suis pas radin, le voici quand même, qui fonctionne.
C"est une classe pour faire des menus imbriqué en utilisant l'objet DOM qui est légèrement surchargée.
Son gros avantage est de gérer tous les menus les sous-menus (1seul niveau testé) avec 1 seul dataset (donc 1 seule requête sur la BDD)
De cette façon, si vous déclrez la classe en singleton et vous chargerez tous vos menu d'un seul coup.
Amusez-vous à rajouter des menus aux données et à passer un autre nom de menu dans $arg['name'] lors de l'appel à la méthode build_Menu ...
Le package vous génère un affichage en 2 parties (2 DIVs côte à côte) :
* celui de gauche pour vos debug (echo, var_dump...)
* celui de droite pour le rendu final
Il ne reste plus qu'à intégrer un petit JS pour gérer l'apparition des sous-menus) ou à modifier le CSS pour un affichage vertical.
Il s'agit de ma première réalisation de ce type alors merci de ne pas être trop sévère dans vos jugements.
Par contre, si vous avez des suggestions, elles sont les bienvenues.
Considérez ça comme une avance sur toutes les infos que je vais vous réclamer...
PS : les données sont sérialisées. Vous ne vouliez quand même pas ma BDD ?!