nicocolt Posté(e) le 11 mai 2007 Partager Posté(e) le 11 mai 2007 Bonsoir, Je rencontre un soucis concernant un problème de logique de programmation (M@t va se moquer de moi sur ce coup là ). Je dispose, dans une table SQL de menus, chaque ligne=un menu. Les champs essentiels sont l'id du menu et le parent_id du menu. Si le parent_id=0, alors c'est un menu de premier niveau, sinon, c'est un sous-menu du menu parent_id, jusque là vous suivez ? Bon Ok, alors petit exemple : id parent_id name 1 0 menu_1 2 0 menu_2 3 1 menu_3 4 2 menu_4 5 4 menu_5 Dans ce cas, le menu devrait s'afficher de la manière suivante: menu_1 - menu_3 menu_2 - menu_4 - - menu_5 C'est plus clair comme ça ? Donc mon problème c'est que je ne trouve pas de logique de programmation pour passer de la base vers l'affichage, ça parait bête comme ça, mais il faut croire que je le suis Alors si votre bon coeur pouvait me donner un coup de pouce ça me ferait vraiment plaisir. Amicalement, Nico Lien vers le commentaire Partager sur d’autres sites More sharing options...
gyan000 Posté(e) le 12 mai 2007 Partager Posté(e) le 12 mai 2007 Il te faut faire une petite fonction récursive toute simple, plus d'info ici. Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 12 mai 2007 Partager Posté(e) le 12 mai 2007 Tu peux faire une fonction récursive qui prend en argument un id, et un nombre d'indentation. La fonction devra afficher l'id avec une certaine indentation puis pour chacun des enfant, s'appeler elle même en augmentant l'indentation. Lien vers le commentaire Partager sur d’autres sites More sharing options...
nicocolt Posté(e) le 12 mai 2007 Auteur Partager Posté(e) le 12 mai 2007 Merci !! Voilà qui éclaire ma chandelle Amicalement, Nicolas Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.