Page 1 sur 1

Liste deroulante selected d'apres valeur ds database?

Posté : 21 août 2006, 09:35
par laplumaencre
Salut a tous , j'ai une liste déroulante alimenté via une base de donnée, le probleme c'est que je veux que le selected de mon select soit positionné par rapport a la valeur récupérer dans une base

Exemple; liste departement ds un formulaire, l'utilisateur choisi son dept (72) et c'est enregistré ds la base, 2 jours apres il revient ouvre la fiche, et la liste déroulante dept doit avoir son selected positionné sur 72 :-) voici mon code :
<select name="marque">
<?php $connexion=mysql_connect("$hostname_dbprotect","$username_dbprotect","$password_dbprotect") or die("<p>Echec de connexion!");
mysql_select_db("$database_dbprotect", $connexion) or die ("<p>Echec de connexion à la base de donnée!");
$SQL1 = "SELECT id_menu,libelle FROM menu_deroulant WHERE id_menu='marque' ORDER BY ordre";
$res1 = mysql_query($SQL1);
while ($val1=mysql_fetch_array($res1)) {
	if ($val1==$_SESSION["marque"]) {
		echo "<option value=\"".$val1['libelle']."\" selected>".$val1['libelle']."</option>\n";
	} else {
		echo "<option value=\"".$val1['libelle']."\">".$val1['libelle']."</option>\n";
	}
}
?>
</select>
Là $_SESSION ["marque"] equivaut ds l'exemple au dept récupérée ds la base de donnée.

Posté : 21 août 2006, 09:46
par Rei Itchido
$vall est un tableau et ta variable de session n'est jamais égale au tableau :)
Il faut que tu précises l'index du tableau.
$vall['id_menu'] par exemple

Posté : 21 août 2006, 09:50
par laplumaencre
MERCI Rei Itchido !!! impec en effet j'avais pas pensé a ça , je peux pas comparer une variable a un tableau :-) , j'ai donc fais comme ça
 if ($val1['libelle']==$_SESSION["marque"]) {
et ça marche impec je te remercie encore, car je galerais avec ça aplus et vive le forum :-)

Posté : 21 août 2006, 09:52
par Rei Itchido
je peux pas comparer une variable a un tableau
Si ta variable contient un tableau tu peux, mais ce n'est pas la cas là :wink:

Posté : 21 août 2006, 10:04
par laplumaencre
ok merci :-)