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

Messages postés
64
Date d'inscription
vendredi 20 janvier 2006
Dernière intervention
27 février 2011
- - Dernière réponse : VicTeams
Messages postés
64
Date d'inscription
vendredi 20 janvier 2006
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 

Votre réponse

2 réponses

Meilleure réponse
Messages postés
345
Date d'inscription
mardi 1 juin 2004
Dernière intervention
17 octobre 2014
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 a aidé 105 internautes ce mois-ci

Commenter la réponse de tpoinsot
Messages postés
64
Date d'inscription
vendredi 20 janvier 2006
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

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.