bonjour,
voila j'ai une liste deroulante et je voudrais afficher:
nom_categorie1
nom_sous_categ
nom_sous_categ
nom_sous_categ
nom_sous_categ
nom_categorie2
nom_sous_categ
nom_sous_categ
nom_sous_categ
nom_sous_categ
mais mon code ne fonctionne pas j ai deux table une catégorie et une sous catégorie avec dans sous_categorie une reference a la table categorie (num_categorie).
Mais mon code affiche ceci:
nom_categorie1
nom_sous_categ
nom_categorie1
nom_sous_categ
nom_categorie2
nom_sous_categ
nom_categorie2
nom_sous_categ
nom_categorie2
nom_sous_categ
et non pas:
nom_categorie1
nom_sous_categ
nom_sous_categ
nom_sous_categ
nom_sous_categ
auriez vous une ide voici le code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 <?php $serveur = "localhost"; $admin = "root"; $mdp = ""; $base = "idealeparut"; $connexion = mysql_connect($serveur, $admin, $mdp); mysql_select_db($base, $connexion); $req = 'SELECT c.nom_categorie,s.nom_sous_categorie FROM categorie_annonce as c, sous_categorie_annonce as s where s.num_categorie=c.id_categorie ORDER BY c.nom_categorie,s.nom_sous_categorie'; $res = mysql_query($req) or exit('Erreur: '.mysql_error()); $num_categorie = null; echo('<select name="article">'); while ($donnees = mysql_fetch_assoc($res)) { // Si on change de catégorie, on l'affiche dans le <select>. if ($donnees['nom_sous_categorie'] !== $num_categorie) { $num_categorie = $donnees['nom_categorie']; echo('<optgroup label="'.$num_categorie.'">'); } //On ajoute "logiquement" notre <option>. echo('<option value="'.$donnees['num_categorie'].'">'.$donnees['nom_sous_categorie'].'</option>'); } echo('</select>'); ?>
Partager