Récupérer la valeur d'une liste déroulante
iramon3
-
iramon3 -
iramon3 -
Bonjour, j'ai un problème qui veut m'arracher les cheveux de la tête :
voilà je voudrais modifier un renregistrement de ma base qui contient un champs titre dont les valeus sont: Mme, Mlle et M. . Il est donc d'abord question de remplir la liste (sans problème) et de choisir par défaut le titre correspondant à l'enregistrement à modifier. voici mon script :
include("connexion.php");
$id=$_GET["id"];
$req="select * from user where ID_USER='".$id."'";
$id_requete = mysql_query($req,$id_connect) or die("Requête impossible");
$ligne = mysql_fetch_array($id_requete);
$viduser="'".$ligne['ID_USER']."'";
$vloguser="'".$ligne['LOG_USER']."'";
$vpwduser="'".$ligne['PWD_USER']."'";
$vmailuser="'".$ligne['MAIL_USER']."'";
$vcivuser="'".$ligne['CIV_USER']."'";
$vnomuser="'".$ligne['NOM_USER']."'";
$vpreuser="'".$ligne['PRE_USER']."'";
$types=$vcivuser;
include("deconnexion.php"); //Jusqu'ici ça va
?> </td>
<td class="liens_cache"><div align="right">Titre : </div></td>
<td width="226"><label>
<?php
// Je détermine la valeur des variables sel, sel1 et sel2 qui déterminront la valeur de la liste
// à afficher par défaut selon la valeur du champ titre pour l'enregistrement à modifier
if ($vcivuser="M.") {$sel=""; $sel1=""; $sel2="selected";}
else{
if ($vcivuser="Mme") {$sel="selected"; $sel1=""; $sel2="";}
else{
if ($vcivuser="Mlle") {$sel=""; $sel1="selected"; $sel2=""; }
}
}
//Je rempli la liste en espespérant faire de la valeur recherchée la valeur à afficher par défaut
//echo '<option value="'.$resultat[0].'" >'.$resultat[0];
echo '<select name=\"civ_user\" id=\"civ_user\">';
echo '<option value=\"Mme\" '.$sel.'> Mme </option>';
echo '<option value=\"Mlle\" '.$sel1.'> Mlle </option>';
echo '<option value=\"M.\" '.$sel2.'> M. </option>';
echo '</option>'."\n";
echo '</select>'."\n";
echo "Sel=$sel Sel1=$sel1 Sel2=$sel2";
//include(deconnection.php);
?>
le pb c'est qu'il ne passe rien la valeur de liste affichée par défaut n'est la bonne et pire encore lorsque même j'en sélectionne une moi même aucune donnée n'est portée dans la base; ce champ pourtant interdit d'être nul l'est dans ma base. je n'y comprend plus rien, aidez, j'attend vos suggestions
voilà je voudrais modifier un renregistrement de ma base qui contient un champs titre dont les valeus sont: Mme, Mlle et M. . Il est donc d'abord question de remplir la liste (sans problème) et de choisir par défaut le titre correspondant à l'enregistrement à modifier. voici mon script :
include("connexion.php");
$id=$_GET["id"];
$req="select * from user where ID_USER='".$id."'";
$id_requete = mysql_query($req,$id_connect) or die("Requête impossible");
$ligne = mysql_fetch_array($id_requete);
$viduser="'".$ligne['ID_USER']."'";
$vloguser="'".$ligne['LOG_USER']."'";
$vpwduser="'".$ligne['PWD_USER']."'";
$vmailuser="'".$ligne['MAIL_USER']."'";
$vcivuser="'".$ligne['CIV_USER']."'";
$vnomuser="'".$ligne['NOM_USER']."'";
$vpreuser="'".$ligne['PRE_USER']."'";
$types=$vcivuser;
include("deconnexion.php"); //Jusqu'ici ça va
?> </td>
<td class="liens_cache"><div align="right">Titre : </div></td>
<td width="226"><label>
<?php
// Je détermine la valeur des variables sel, sel1 et sel2 qui déterminront la valeur de la liste
// à afficher par défaut selon la valeur du champ titre pour l'enregistrement à modifier
if ($vcivuser="M.") {$sel=""; $sel1=""; $sel2="selected";}
else{
if ($vcivuser="Mme") {$sel="selected"; $sel1=""; $sel2="";}
else{
if ($vcivuser="Mlle") {$sel=""; $sel1="selected"; $sel2=""; }
}
}
//Je rempli la liste en espespérant faire de la valeur recherchée la valeur à afficher par défaut
//echo '<option value="'.$resultat[0].'" >'.$resultat[0];
echo '<select name=\"civ_user\" id=\"civ_user\">';
echo '<option value=\"Mme\" '.$sel.'> Mme </option>';
echo '<option value=\"Mlle\" '.$sel1.'> Mlle </option>';
echo '<option value=\"M.\" '.$sel2.'> M. </option>';
echo '</option>'."\n";
echo '</select>'."\n";
echo "Sel=$sel Sel1=$sel1 Sel2=$sel2";
//include(deconnection.php);
?>
le pb c'est qu'il ne passe rien la valeur de liste affichée par défaut n'est la bonne et pire encore lorsque même j'en sélectionne une moi même aucune donnée n'est portée dans la base; ce champ pourtant interdit d'être nul l'est dans ma base. je n'y comprend plus rien, aidez, j'attend vos suggestions
A voir également:
- Récupérer la valeur d'une liste déroulante
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Recuperer message whatsapp supprimé - Guide
- Comment recuperer une video sur youtube - Guide
- Récupérer mon compte facebook désactivé - Guide
2 réponses
Voilà:
include("connexion.php");
$id=$_GET["id"];
$req="select * from user where ID_USER='".$id."'";
$id_requete = mysql_query($req,$id_connect) or die("Requête impossible");
$ligne = mysql_fetch_array($id_requete);
$viduser=$ligne['ID_USER'];
$vloguser=$ligne['LOG_USER'];
$vpwduser=$ligne['PWD_USER'];
$vmailuser=$ligne['MAIL_USER'];
$vcivuser=$ligne['CIV_USER'];
$vnomuser=$ligne['NOM_USER'];
$vpreuser=$ligne['PRE_USER'];
$types=$vcivuser;
include("deconnexion.php"); //Jusqu'ici ça va
?> </td>
<td class="liens_cache"><div align="right">Titre : </div></td>
<td width="226"><label>
<?php
// Je détermine la valeur des variables sel, sel1 et sel2 qui déterminront la valeur de la liste
// à afficher par défaut selon la valeur du champ titre pour l'enregistrement à modifier
//Je rempli la liste en espespérant faire de la valeur recherchée la valeur à afficher par défaut
//echo '<option value="'.$resultat[0].'" >'.$resultat[0];
?>
<select name="civ_user" id="civ_user">
<option value="Mme" <?php if($vcivuser=="Mme") {echo "selected";} ?>> Mme </option>
<option value="Mlle" <?php if($vcivuser=="Mlle") {echo "selected";} ?> > Mlle </option>
<option value="M." <?php if($vcivuser=="M.") {echo "selected";} ?>> M. </option>
</select>
Bonjour
La comparaison en PHP, c'est == , pas implement =
donc
Pour ce qui est d'ajouter de valeurs dans ta base... Il faudrait que tu montres le script qui récupères les valeurs du formulaire et les insère dans la base, car ça n'est pas fait dans celui que tu montres. Il n'y a même pas de balise <FORM>
La comparaison en PHP, c'est == , pas implement =
donc
if ($vcivuser="M.")(et les autres) est incorrect. Tu obtiens sans doute toujouts Melle comme valeur par défaut.
Pour ce qui est d'ajouter de valeurs dans ta base... Il faudrait que tu montres le script qui récupères les valeurs du formulaire et les insère dans la base, car ça n'est pas fait dans celui que tu montres. Il n'y a même pas de balise <FORM>