8795 sujets

Développement web côté serveur, CMS

Bonjour,
j'ai créer un menu verticale en css à partir du livre d'Eric Meyer sur les CSS.
Je voudrais rendre ce menu dynamique en utilisant des données issues d'une Bdd MySql.
J'ai produit le code suivant :

<?php
    //connection au serveur:
	$cnx = mysql_connect(SERVEUR, USER, PASS, DB) ;
  
    //sÈlection de la base de donnÈes:
    $db = mysql_select_db( DB ) ;
  
    //requÍte SQL:
    $sql = "SELECT cat.nom, titre, texte, icone
	      FROM cat, doss
	      WHERE cat.id_cat = doss.id_cat
	      ORDER BY nom" ;
  
    //exÈcution de la requÍte:
    $requete = mysql_query( $sql, $cnx ) ;
  
    //affichage des donnÈes:
   while( $result = mysql_fetch_object( $requete ) )
    { 
       echo("<div id=\"nav\">\n") ;
       echo("<ul class=\"level1\">\n") ;
       echo("<li class=\"submenu\">".$result->nom."\n") ;
       		echo("<ul class=\"level2\">\n") ;
       		echo("<li class=\"submenu\">".$result->titre."</li>\n") ;
       		echo("</ul>\n") ;
       		echo("</li>\n") ;
       echo("</ul>\n") ;
    }
  ?>

"$result->nom" correspond au données de ma table 'cat' pour afficher mes catégories (niveau 1 du menu).
".$result->titre." correspond au données de ma table 'doss' pour afficher mes dossiers (niveau 2 du menu).
Mon problème c'est qu'il me répète pour chaque dossier la catégorie.
Alors comment faire ? je sais que le problème est dans la construction de la boucle While mais je ne trouve pas la solution.
Pouvez-vous m'aider, svp ?
Salut,
tu pourrais le faire en deux requetes, la 1ere qui va chercher la rubrique, tu boucles sur la rubrique, et pour chaque rubrique (dans la boucle) tu fais la requete pour recupérer les sous rubriques correspondants à la rubriques (2e requete avec where)
Sinon tu peux faire faire une boucle juste aprés l'affichage de la rubrique, si la rubrique est toujours la meme tu affiches les ous rubrique, sinon tu passes à la suite (rubrique suivante).
Je sais pas si j'ai été bien compréhensif... mais sinon ton problème n'a pas grand chose à voir avec les standards, tu trouveras plus d'aide dans un forum spécialisé en php.
bonne continuation.