Parcours prefixe d'un arbre.

netweb
WRInaute discret
WRInaute discret
 
Messages: 133
Inscription: 29 Juil 2009

Parcours prefixe d'un arbre.

Message le Dim Nov 14, 2010 0:05

Bonjour,

Je cherche un code php qui permet de parcourir en profondeur un arbre sachant que l'ordre ou le parcours est prefixé.

j'ai deux tables dans la base mysql:

table parent qui contient les id_parents + les nom des père

et un table fils qui contients 3 colonnes id_parents , id_fils et nom de fils.

Bon, j'aimerai faire un code php qui permet de parcourir en php ces deux tables et afficher les fils et les nombres de fils de chaque parent en commencant de racine (qui est le premier id_parent de table parent.): afficher sous chaque père ses fils

------------------------table parent-------------------------------------------

id_parent | Nom
2 | Père1
4 | Père2
9 | Père3


------------------------table fils-------------------------------------------

id_parent | id_fils | Nom
2 | 3 |Eric
4 | 5 |Romei
9 |12 |Lilya

Voila et merci d'avance de votre aide.

Cdt.

jcaron
WRInaute accro
WRInaute accro
 
Messages: 2685
Inscription: 13 Fév 2004

Re: Parcours prefixe d'un arbre.

Message le Dim Nov 14, 2010 1:39

Perso, je ne comprends pas la logique de ta structure... Si c'est un arbre avec un nombre de niveaux qui n'est pas prédéfini, tu devrais avoir deux tables:
nœud: id -> nom
lien: id parent -> id fils

Là, ta structure a l'air vaguement adaptée au cas d'un arbre à deux niveaux (trois en comptant la racine implicite), pas plus.

Si ton arbre a plus de niveaux que ça, la seule solution qui marche dans tous les cas (avec une structure telle que décrite plus haut, pas celle que tu décris), c'est du code récursif.

Jacques.

netweb
WRInaute discret
WRInaute discret
 
Messages: 133
Inscription: 29 Juil 2009

Re: Parcours prefixe d'un arbre.

Message le Dim Nov 14, 2010 9:08

Bonjour, oui elle est composée de 40 niveau et contient deux tables comme vous avez décrit.


reglisse
WRInaute passionné
WRInaute passionné
 
Messages: 1073
Inscription: 15 Nov 2005

Re: Parcours prefixe d'un arbre.

Message le Dim Nov 14, 2010 9:30

je ne comprends pas ou se trouve les 40 niveaux c'est des générations ?


spout
WRInaute accro
WRInaute accro
 
Messages: 4382
Inscription: 14 Mai 2003

Re: Parcours prefixe d'un arbre.

Message le Dim Nov 14, 2010 9:34



reglisse
WRInaute passionné
WRInaute passionné
 
Messages: 1073
Inscription: 15 Nov 2005

Re: Parcours prefixe d'un arbre.

Message le Dim Nov 14, 2010 9:39

un peu de théorie devrait m'aider moi aussi ... très intéressant le lien

netweb
WRInaute discret
WRInaute discret
 
Messages: 133
Inscription: 29 Juil 2009

Re: Parcours prefixe d'un arbre.

Message le Dim Nov 14, 2010 10:19

ok j'explique ,

alors le principe est simple:

j'ai un programme qui à partir de lui, un membre fait l'inscription, alors automatiquement un id (auto-incrément)sera attribué à ce dernier et sera enregistré dans la colonne id de table membre.

Après l'inscription, ce membre passe à une deuxième étape pour inviter d'autres amis .Les amis invités seront enregistrés dans la table inviter , un id (auto-incrément) sera attribué pour chaque invité dans la colonne id de table invité, l'adresse email de l'invité sera inséré dans la colonne email et au fur et à mesure l'id de membre qui a envoyé l'invitation sera inséré en parallèle dans la colonne id_mem de table invité.

sachant que chaque membre peut devenir un membre s'il a accepté l'invitation et comme ca , il sera redirigé vers le site pour introduire son adresse email , alors un id auto incrément sera attribué à ce dernier, son adresse émail sera insère dans la colonne email de table membre et il peut lui aussi envoyé des invitation à d'autres amis.
alors comment savoir si un invité a devenu membre? c'est à partir de son adresse émail que existe dans le deux tableaux.

bon je veut faire un programme qui permet de calculer les nombres de fils de chaque invité sur 40 niveau.
Si X invite Y, Y invite Z , Z invite H
alors Y parent de z de niveau 1 , Y parent de H de niveau 2
donc on dit z fils de y niveau 1 et Y fils de Y niveau 2

j'espère que vous avez compris.

Cdt.


spout
WRInaute accro
WRInaute accro
 
Messages: 4382
Inscription: 14 Mai 2003

Re: Parcours prefixe d'un arbre.

Message le Dim Nov 14, 2010 10:26

Tout comme jcaron, je ne comprend pas pourquoi faire 2 tables. Un père: parent_id = 0 c'est tout.

netweb
WRInaute discret
WRInaute discret
 
Messages: 133
Inscription: 29 Juil 2009

Re: Parcours prefixe d'un arbre.

Message le Dim Nov 14, 2010 10:38

un mail sera envoyé pour chaque invité , pour confirmer son invitation il doit faire l'inscrit , donc il devient un membre à condition que l'adresse émail saisi dans la table membre soit le même que ce de la table inviter .

netweb
WRInaute discret
WRInaute discret
 
Messages: 133
Inscription: 29 Juil 2009

Re: Parcours prefixe d'un arbre.

Message le Dim Nov 14, 2010 10:40

reglisse a écrit:un peu de théorie devrait m'aider moi aussi ... très intéressant le lien

oui elle est composé de plusieurs générations comme vous voyer dans mon dernier message.


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 4 invités