raph37 Posted June 17, 2011 Posted June 17, 2011 Bonjour a tous ! J'aimerai savoir quel structure de table vous utilisez avec vos menus . pour le moment je tente ceci qui ne fonctionne pas vraiment car je n'arrive pas a lier correctement les ParentID avec les ID: CREATE TABLE `menu` ( `ID` int(11) NOT NULL auto_increment, `ParentID` int(11) default NULL, `Name` varchar(30) collate utf8_unicode_ci NOT NULL, `Link` varchar(128) collate utf8_unicode_ci default NULL, `Class` varchar(50) collate utf8_unicode_ci default NULL, `Title` varchar(256) collate utf8_unicode_ci default NULL, UNIQUE KEY `ID` (`ID`), KEY `ParentID` (`ParentID`)) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=7 ; ou plus clairement : ----------------------------------------------------------- ID | ParentID | Name | Link | Class | Title |----------------------------------------------------------- 1 | 1 | Acueil | # | strong | | 2 | 2 | Outils | # | strong | | 3 | 3 |Matière | # | strong | | 4 | 2 |perceuse| # | medium | | 5 | 4 | foret | # | small | | 6 | 3 | tissu | # | small | | C'est a ce moment là que je galère , avec la requête SQL : "SELECT * FROM menu ORDER BY ParentID ASC, ID ASC" Ce qui me donnera : ----------------------------------------------------------- ID | ParentID | Name | Link | Class | Title |----------------------------------------------------------- 1 | 1 | Acueil | # | strong | | 2 | 2 | Outils | # | strong | | 4 | 2 |perceuse| # | medium | | 3 | 3 |Matière | # | strong | | 6 | 3 | tissu | # | small | | 5 | 4 | foret | # | small | | alors que je voudrai çà : ----------------------------------------------------------- ID | ParentID | Name | Link | Class | Title |----------------------------------------------------------- 1 | 1 | Acueil | # | strong | | 2 | 2 | Outils | # | strong | | 4 | 2 |perceuse| # | medium | | 5 | 4 | foret | # | small | | 3 | 3 |Matière | # | strong | | 6 | 3 | tissu | # | small | | Quelqu'un aurait-il une solution pour corriger mon problème ? Merci de votre aide
Sarc Posted June 17, 2011 Posted June 17, 2011 Bonjour, Pour le coup, vu qu'un traitement en PHP sera de toute façon nécessaire pour mettre en forme le tableau de sortie, je te conseille de prendre tous les liens sans forcément trier en SQL, et de retrier correctement en PHP. Avec une fonction récursive, ça se fera tout seul en quelques lignes, ça sera magique, et pas forcément plus long !
Portekoi Posted June 17, 2011 Posted June 17, 2011 Bonjour, Regarde mon script ici, tu as tout se qu'il faut dedans : />http://www.portekoi.com/menu/ ++ Portekoi
raph37 Posted June 17, 2011 Author Posted June 17, 2011 Merci Portekoi , je vais surement m'en inspirer
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now