Bonjour,
J'affiche sur une page web, une liste de noms et de pays, de noms de couleur, de nom de style.
le champ pays, couleur et style sont sous forme de liste d�roulante.
Si je prends uniquement le champ pays, je souhaite afficher le nom du pays saisi dans la base sql
Jusque l�, pas trop de souci.
voici les selectVoici ma boucle dans mon body et ma table
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 $query1 = "SELECT * FROM comp_post dp LEFT JOIN comp_pays dps ON dp.comp_pays = dps.id_pays LEFT JOIN comp_coul dc ON dp.comp_couleur = dc.id_coul LEFT JOIN comp_style ds ON dp.comp_style = ds.id_style ORDER BY comp_date DESC"; $result = mysql_query($query1) or die(mysql_error()); // Sélection Pays $reqPays = "SELECT * FROM comp_pays"; $resPays = mysql_query($reqPays)or die(mysql_error()); ?>
Le r�sultat est que seul le premier nom avec un pays s�lectionn� s'affiche.
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 <?php while ($aResult=mysql_fetch_array($result)){?> <td > <?php $selection= "SELECT * FROM comp_post dp LEFT JOIN comp_pays dc ON dp.comp_pays=dc.id_pays WHERE id_pays='".$aResult['comp_pays']."' "; $result2= mysql_query($selection) or die (mysql_error());?> <select name="id_pays" id="id_pays" > <?php while ($aResult2 = mysql_fetch_array($result2)) { ?> <?php while ($aPays = mysql_fetch_array($resPays)) { if ($aPays['id_pays'] == $aResult['comp_pays']) { $selected = ' selected'; } else { $selected = ''; } ?> <option value="<?php echo $aPays['id_pays']; ?>"<?php echo $selected; ?>><?php echo $aPays['nom_pays']; ?></option> <?php }}?> </select> </td>
Les autres s�lect sont vides.
En langage naturel, je dirais ceci :
- liste de noms, pays, couleur, style
- dans cette liste, un menu d�roulant de pays
- dans ce menu d�roulant, afficher le pays s�lectionn�
et ce, sur chaque ligne de la liste.
J'ai pens� � un foreach mais je ne sais pas comment l'�crire ni � quel endroit des boucles le mettre.
Qui pourrait m'aider ?
Merci d'avance
ed
Partager