arbre tertiare

Par procreagency Sarl, il y a 7 ans


Bonjour,

j'ai besoin de créer php class pour gérer arbre tertiare (ajout element, affiché arbre a partir d'un element..)
chaque element a au maximum 3 enfants..

j'ai creer la BD telque chaque element a :
Id
reffer_id (parent id)
row (niveau de l'element: 1er element row=1, ses enfant automatiquement row=2..)
column (position de l'element a son niveau "row" )

11 réponses

Mehdikacim, il y a 7 ans

Une idée ::

<?php CONST max = 3 class Element{ private $id; private $childs = []; private $parent; public __contruct(){} public setId($id){ $this->id = $id; } public getId(){ return $this->id; } public setChild($element){ if(count($childs) < max){ $this->childs[] = $element; } } public setParent($element){ $this->parent = $element; } /.../ } class Tree { private $elements = []; public pushElement(Element $element){ $this->elements[] = $element; } public __toString($id){ if(!is_nan($id) && $id !=0){ // si j est un nombre et non null for($i = $id; $i < count($elements);$i++){ echo "id=$id<br>"; echo "parent=" $parent->getId(); //après ont peut récupérer les enfants etc... echo "child = <br>"; //on parcours les enfants for($j=0;$j < count($this->childs); $j++{ echo "enfant n°". ($j+1) . " = " . $this->childs[$j]->getId(); } } } } }
procreagency Sarl, il y a 7 ans

Merci pour votre réponse, mais ce n'est pas clair! comment l'utiliser?

Mehdikacim, il y a 7 ans

Ce n'est pas utilisable pour le moment...
c'est un petite maquette pour que tu vois comment construire tes classes.
Tree est l'arbre qui contient une collection d'élement.
Chaque element possède un id, 3 enfant et un parent.
Pour le tête de l'arbre tu n'as pas de parents. (un element par exemple avec un id null)

procreagency Sarl, il y a 7 ans

j'ai la table en DB avec la strucure:
id,id_parent,row,column
id_parent (0 pour 1er element de l'arbre)
row= niveau de l'element (1er element row=1)
column= position de l'element (1er element column=1 , mais pour les elements de row=2 la valeur de column de 1 à 3, row=3 ==> column de 1 à 9 ...etc puisque chaque element a au max 3 elements)

j'ai besoin class et exemple fonctionel pour parcourir l'arbre depuis un elemnt et ajouter nouveau element à partir de son parent!!!
Vous pouvez m'aider?

Mehdikacim, il y a 7 ans

Peux-tu me fournir à l'adresse mehdikacim@hotmail.fr la db ?

Mehdikacim, il y a 7 ans

TELECHARGER TREE.ZIP
Dans cette archive j'ai fait une chose de fonctionelle

procreagency Sarl, il y a 7 ans

Bonjour,
j'ai vous envoyé la BD à votre email..
j'ai téléchargé votre zip file mais ne marche pas! Il faut faire quelque chose?

Mehdikacim, il y a 7 ans

il faut mettre sur un serveur php, et dans le dossier ouvrir un terminal et faire :

composer dump-autoload
procreagency Sarl, il y a 7 ans

il est en serveur php mais j'ai pas un terminal

Mehdikacim, il y a 7 ans

Si tu en a forcément un

windows + x puis c puis entré

Au préalable installe composer

Defy, il y a 7 ans

si c'est installer sur un server mutualisé il n'en auras pas. faut voir ou il est installer