Script de recherche dans Arborescence

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Script de recherche dans Arborescence

Re: Script de recherche dans Arborescence

par Darco » 01 juil. 2011, 14:11

Mazarini,
Je te remercie de ta réponse... Je n'y avais pas pensé... peur de boucle sans fin peut être.

Je vais la mettre en pratique..
Encore Merci
Darco

Re: Script de recherche dans Arborescence

par Mazarini » 01 juil. 2011, 08:47

Bonjour,

Il faut faire une fonction récurcive qui s'appelle elle même.
function mere($id)
{
   $SQL = 'select...'; /* de la ligne $id
   $res = mysql-query($SQL);
   $data = mysql_fetch_assoc($res);  
   if ($data['parent'] == 0) 
   {
      return $id; /* plus de parent
   }
   else
   {
      return mere($data['parent']); /* tu recherches le parent suivant
}
(tu ajouteras le controle de la bonne exécution de mysql)

Script de recherche dans Arborescence

par Darco » 30 juin 2011, 17:50

Bonjour à tous,
Voilà j'ai un soucis de concepotion de script :(

Dans une table d'abo j'ai ce genre d'enregistrement :

id | NOM | Parent |
1 | Accueil | 0 |
2 | Menu 1 | 0 |
3 | Menu 2 | 0 |
4 | Menu 1-1 | 2 |
5 | Menu 1-2 | 2 |
6 | Menu 1-3 | 2 |
7 | Menu 2-1 | 3 |
8 | Menu 2-2 | 3 |
9 | Menu 2-2-1 | 8 |

....
id = Identifiant de la table
Nom = Nom de la Rubrqieu (ou Sous-Rubrique, Sous-Sous-Rubrique... etc.)
Parent = Le lien entre les rubrique.
Ex. : Ici l'enregistrement numéro 4 est "l'enfant" du numéro 2.

Qui me permet d'afficher un menu déroulant sous "X" Niveau.

Ce que j'aimerai c'est ou que je sois dans l'arborescence je puise retrouver "La Rubrique Mère" ddans laquelle je me trouve.
Alors j'ai fait :

Je regarde le champ parent ou je me trouve, si c'est égal à "0" (zéro) je suis dans ma "Rubrique Mère"
Sinon je regarde a quel "ID" correspond ce "PARENT"... Ainsi de suite...
Mais je ne sais pas à l'avance la "profondeur" du Menu. Et je ne veux (et ne peux) pas faire un test sur "X" niveau
Y aurait'il un moyuen plus simple !?
Merci
De votre aide.
Darco