Valeur par défaut depuis mysql sur liste déroulante [Résolu]

Messages postés
64
Date d'inscription
vendredi 20 janvier 2006
Statut
Membre
Dernière intervention
27 février 2011
- - Dernière réponse : VicTeams
Messages postés
64
Date d'inscription
vendredi 20 janvier 2006
Statut
Membre
Dernière intervention
27 février 2011
- 25 sept. 2009 à 11:58
Bonjour à tous, voila maintenant 2 jours et demi que je cherche a mettre la valeur par défaut dans un select.
Je m'explique :

J'ai 2 tables, la première me permet de mettre des fabricants, la secondes pas mal d'autre infos,

Quand je créer une entré mysql avec mon formulaire, j'ai une liste déroulante avec les donnée de ma 1ere table, jusque là, pas de problèmes, je fait ma sélection, je valide mon formulaire, les données s'enregistre ainsi que les donnée de mon select, au format text et non id.

Mais quand je souhaite modifier cet enregistrement via un autre formulaire, je souhaiterais que ma liste déroulante, affiché les valeurs de ma 1ere table, mais que l'option 'selected' affiche comme valeur par defaut, le fabricants enregistrée dans ma 2eme table.

Voici mon code qui affiche les 'options' de ma liste déroulante, et j'aimerais que la valeur sélectionnée par defaut soit la valeur enregistrer dans ma 2eme table, la connexion a la bdd se fait en début de page, ceci est juste la liste déroulante qui fonctionne :

<?php
echo "<select name=fabricants>";
$requete=mysql_query("SELECT * FROM fabricant");
$nombrelignes = mysql_numrows($requete);
for ($i=0;$i<$nombrelignes;$i++) {
$fabricants = mysql_result($requete,$i,"nom");

echo "<option value=$fabricants> $fabricants </option>";
}
echo '</select>';

?>


Aidez moi svp, je commence à désespérer, Merci à tous
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
345
Date d'inscription
mardi 1 juin 2004
Statut
Membre
Dernière intervention
17 octobre 2014
3
3
Merci
Bonjour,
tu ajoutes " selected " sur la bonne ligne :
si ta valeur est dans $fabricantInitial (trouvée par sql sur table2) alors coupe ton echo en 2 :
echo "<option value=$fabricants";
if ( !strcmp($fabricants, $fabricantInitial) ) echo " selected";
echo "> $fabricants </option>";

thip

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 137 internautes nous ont dit merci ce mois-ci

Commenter la réponse de tpoinsot
Messages postés
64
Date d'inscription
vendredi 20 janvier 2006
Statut
Membre
Dernière intervention
27 février 2011
0
Merci
Comment te remercier, eu franchement un GRAND merci, je me prend la tête avec sa depuis pas mal de temps, je suis trop trop content !!!!

MERCI, MERCI, MERCI

Voici mon code final qui fonctionne un modifier :
<?php
echo "<select name=fabricants>";
$requete=mysql_query("SELECT * FROM fabricant");
$nombrelignes = mysql_numrows($requete);
for ($i=0;$i<$nombrelignes;$i++) {
$fabric = mysql_result($requete,$i,"nom");

echo "<option value=$fabric";
if ( !strcmp($fabric, $fabricants) ) echo " selected";
echo "> $fabric </option>";
}


?></select>
Commenter la réponse de VicTeams