Arborescence de catégories

Eléphant du PHP | 52 Messages

22 févr. 2010, 21:11

Bonsoir,

je souhaite créer une arborescence de lien pour indiquer à l'utilisateur ou il se trouve.
Exemple: Accueil => Nature => Animaux => Batraciens.

J'aurai besoin donc d'un minimum de 3 niveaux. Seulement, je sais pas du tout comment m'y prendre et mes connaissance en PHP sont très limitées.
Mes catégorie sont bien sagement rangées dans ma db.
Exemple
Nature (id 1 ; root = 0)
Animaux (id 4 ; root = 1)
Batraciens (id 11 ; root = 4)

Comment procéder ?

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

22 févr. 2010, 23:28

Basiquement, à partir de la page sur laquelle tu te trouves (ex : Batraciens dont l'id est 11), tu peux aller chercher dans ta table l'id de la catégorie parente (id=4). Tu peux stocker ces informations dans un tableau par exemple.

Tant que l'id est différent de 0 tu recommences. Tu vas donc aller chercher le nom de la catégorie dont l'id est 4, et l'id de la catégorie parente (id=1). Comme c'est encore différent de 0, tu vas chercher le nom de la catégorie dont l'id est 1, et l'id de la catégorie parente (id=0 à partir de là, tu t'arrêtes).

Il ne te reste plus qu'à afficher chacune des rubriques que tu as stocké dans ton tableau pour afficher ton fil d'ariane :)

(ça reste une solution de base qui peut très certainement être optimisée pour limiter le nombre de requêtes :))
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...