construire une liste déroulante en cascade
3 messages
• Page 1 sur 1
- passion
- WRInaute accro

- Messages: 3124
- Inscription: 6 Jan 2006
construire une liste déroulante en cascade
Bonjour,
Je suis en train de me prendre la tête pour construire une liste déroulante pour laquelle je souhaiterai que le résultat soit de la sorte:
Mes données sont stockées dans une bdd.
j'ai pensé le faire en PHP mais vu que cela est dynanique au niveau de la construction des noeuds (parent/fille), je vais me perdre ??!!
Ensuite j'ai pensé en faire un arbre XML mais c'est pareil, il faudrait que je le construise pour ensuite le parser au moment d'afficher la liste déroulante !
Je stocke mes données selon l'architecture SQL suivante:
colonne ID
colonne ID_PARENT
ID_PARENT : correspond à un noeud
Voilà, j'espère avoir répondu à certains nombres de questions
Merci de votre aide!
Je suis en train de me prendre la tête pour construire une liste déroulante pour laquelle je souhaiterai que le résultat soit de la sorte:
sport
--sports mécaniques
----sport automobiles
------F1
------Nascar
----sport moto
------GP1
------etc...
--sports de combats
etc....
Mes données sont stockées dans une bdd.
j'ai pensé le faire en PHP mais vu que cela est dynanique au niveau de la construction des noeuds (parent/fille), je vais me perdre ??!!
Ensuite j'ai pensé en faire un arbre XML mais c'est pareil, il faudrait que je le construise pour ensuite le parser au moment d'afficher la liste déroulante !
Je stocke mes données selon l'architecture SQL suivante:
colonne ID
colonne ID_PARENT
ID_PARENT : correspond à un noeud
Voilà, j'espère avoir répondu à certains nombres de questions
Merci de votre aide!
-

spout - WRInaute accro

- Messages: 4377
- Inscription: 14 Mai 2003
Re: construire une liste déroulante en cascade
http://articles.sitepoint.com/article/hierarchical-data-database
Il faut adapter cette fonction:
Pour ca remplisse les <option>
La ligne:
A remplacer par un truc du genre:
Et ne pas oublier d'ajouter "id" dans la requête SELECT.
Il faut adapter cette fonction:
- Code: Tout sélectionner
<?php
// $parent is the parent of the children we want to see
// $level is increased when we go deeper into the tree,
// used to display a nice indented tree
function display_children($parent, $level) {
// retrieve all children of $parent
$result = mysql_query('SELECT title FROM tree '.
'WHERE parent="'.$parent.'";');
// display each child
while ($row = mysql_fetch_array($result)) {
// indent and display the title of this child
echo str_repeat(' ',$level).$row['title']."\n";
// call this function again to display this
// child's children
display_children($row['title'], $level+1);
}
}
?>
Pour ca remplisse les <option>
La ligne:
- Code: Tout sélectionner
echo str_repeat(' ',$level).$row['title']."\n";
A remplacer par un truc du genre:
- Code: Tout sélectionner
echo '<option value="'.$row['id'].'">'.str_repeat('--',$level).$row['title']."</option>\n";
Et ne pas oublier d'ajouter "id" dans la requête SELECT.
3 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- Liste déroulante
- Liste déroulante et diaporama.
- Liste déroulante et référencement
- Impact liste déroulante
- liste déroulante stylée
- liste déroulante en CSS.
- Liste déroulante indexable / Crawlable
- Liste déroulante de formulaire et référencement
- Référancement d'une liste déroulante
- Referencement liste deroulante SELECT
- Google recrute Vinton Cerf, le père d'Internet
- Yahoo! Questions/Réponses veut développer les réseaux de connaissances
- 2 millions de serveurs dans les data centers Google ?
- Votre page d'accueil Google personnalisée en français
- PubSubHubbub : tutoriel complet en français
- Google Sets
- Articles sur le référencement publiés par des chercheurs
- Liste de mots-clés
Cet outil vous permet de créer à partir de quelques mots-clés une liste d'expressions constituées des mots pris dans tous les ordres possibles. Il sert aux analyses de positionnement et achats de mots-clés. - Liste de sous-domaines
Cet outil vous permet de trouver la liste des sous-domaines (indexés) d'un site.
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité
