par
arnovs72 » 31 janv. 2010, 15:08
Bonjour a tous,
Ca ne fait que quelques semaines que j'apprends le html et php.
Grace aux différents forums comme celui ci , mon petit site prend forme doucement. Mais ca fait une semaine que je bloque sur le même pb, celui de pré-selectionner une valeur dans une liste dynamique.
J'ai trouvé sur ce site la maniere de proceder mais n'arrive pas à l'integrer à mon code et plus ca va plus je m'embrouille.
J'ai donc dédidé de vous demander un coup de main et vous en remercie d'avance.J'ai deux tables, une table
user avec un champ
id_user et un champ
id_agence et une autre table
agence avec un champ
id_agence et un autre
nom_agence
Pour faire simple, ma liste déroulante est alimentée par la table
agence , et j'ai besoin qu'elle se positionne automatiquement sur la valeur du champ
id_agence de la table
user.
Dans la page de mon formulaire de modification, je recupere la valeur
id_agence issue de ma table
user sous la variable que j'ai nommée $id_agence_user
Je construis ma liste de cette manière :
Code : Tout sélectionner
<?php
mysql_connect("localhost", "root", "") or die( "Connexion impossible.");
mysql_select_db("si") or die( "Accès base impossible.");
$result = mysql_query("SELECT * FROM agence");
$ld = "<SELECT NAME='nom_agence'>";
$ld .= "<OPTION VALUE=0></OPTION>";
// On boucle sur la table
while ( $row = mysql_fetch_array($result))
{
$id_agence = $row["id_agence"];
$agence = $row["nom_agence"];
$ld .= "<OPTION VALUE='$id_agence'>$agence</OPTION>";
}
$ld .= "</SELECT>";
print $ld;
?>
D'après ce que j'ai compris , c' est l' option selected qui permet de selectioner une valeur de ma liste , il faut également que j'utilise une boucle qui ira tester si la $id_agence est égale à $id_agence_user et dans ce cas la selectionner .
Mais je ne comprend pas ou et comment construire cette boucle de test.
Voici l' exemple de code trouvé sur ce forum :
Code : Tout sélectionner
<select name="age">
<?php
$valeurChoisie = 20;
for ($i=7; $i<=77; $i++) {
if ($i == $valeurChoisie) {
echo '<option value="'.$i.'" selected="selected">'.$i.'</option>';
} else {
echo '<option value="'.$i.'">'.$i.'</option>';
}
}
?>
</select>
Si vous avez la moindre idée, je suis preneur car là je bloque completement et surtout je m'embrouille....
Mercid'avance pour l'aide que vous pourrez m'apporter.
Bonne journée
Arnaud