PB formulaire UPDATE

Résolu
jeinny Messages postés 133 Date d'inscription   Statut Membre Dernière intervention   -  
jeinny Messages postés 133 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Voila j'ai un problème dans un formulaire de modification en faite voila je pense que je récupère mal mes valeurs à modifier mais je ne vois pas comment les récuppérer autrement mais ce problème ne se passe que sur les liste déroulante. Je n'est pas d'erreur quand je lance ma requête mais en l'affichant je vois bien qu'il ne récupère pa toute les valeurs c'est en faisant des tests que j'ai vu que je récupèra mes valeurs de liste comme ceci:
$cycle=$_GET['idcycle'];
$rs1 = mysql_query("SELECT IdCycle from Cycle WHERE LibelleCycle='".$cycle."'");
$ligne1 = mysql_fetch_array($rs1);
$cycle=$ligne1['IdCycle'];

et une fois j'ai essayé de mettre les 3dernière ligne ci-dessus en commentaire et des fois sa marche et d'autre non.
Bref voila je vous ai expliqué du mieu qu j'ai pu mais je ne comprend pas grand chose à ce problème.
si vous avez besoin de mon code pour mieux comprendre demndez moi !

Je vous remerci d'avance.
Cordialement.
A voir également:

25 réponses

jeinny Messages postés 133 Date d'inscription   Statut Membre Dernière intervention   26
 
j'ai aussi essayé de mémorisé dans un input type hidden l'ancien id et le nouveau et en testan si le nouveau était vide alors il prenait la valeur de l'ancien et heureusement ça sa marche mais ça fait pareil qu'avant c-a-d que sa me met le libelle dans ma requête pourtant j'ai bien vérifié et dans le textbox il y a bien l'id. et je ne comprend pas pourquoi il le change je n'ai fait aucune requête pour ça !!
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
si l'utilisateur ne change pa la liste A1 et change la A2 j'aurai une requete de type=
UPDATE table SET idA1='libelleA1', idA2, ='IdA2';
et moi je ne peut rien faire du libelle


ça ne marche pas comme ça les listes

par exemple

<option value="A1">libelle A1</option>

même si l'utilisateur ne change pas la sélection dans la liste ça renverra toujours la value "A1"

par contre si tu veux absolument que l'utilisateur cahnge toutes les listes et le verifier tu mets des listes comme ça:

<select name="liste1">
<option value="-1">Veuillez choisir </option>
<option value="A1">A1 </option>
<option value="A2">A2 </option>
</select>

etc ... pour les autres listes

et tu peux tester par ex:

if($_POST['liste1'] =="-1"){
echo "Veuillez choisir dans la liste 1 !";
}elseif($_POST['liste2'] =="-1"){
echo "Veuillez choisir dans la liste 2 !";
}elseif($_POST['liste3'] =="-1"){
echo "Veuillez choisir dans la liste 3 !";
}else{
//tu recuperes les choix des liste par $_POST['liste1'] etc.. puis tu fais ton UPDATE

}
0
jeinny Messages postés 133 Date d'inscription   Statut Membre Dernière intervention   26
 
nan moi je ne veu pas que l'utilisateur soit obligé de tout changer et c'est bien la le problème.
Quand vous dites: même si l'utilisateur ne change pas la sélection dans la liste ça renverra toujours la value "A1"

je ne suis pas d'accord car mi quand il ne change pas un liste je e vois pas s'affiché le value mais se que l'on voi sur la liste c'est-a-dire qu quand il y a le code avec un tiret et le libelle aprè et bien je vois sa dans ma requete se qui est inutilisable. devrais-je faire un booleen pour savoir si il son chngé ou je ne c pa tro quoi ????
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
j'y comprend rien

donnes nous le code complet de ta page avec les listes et la partie ou tu récupères les valeurs pour ta requette
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jeinny Messages postés 133 Date d'inscription   Statut Membre Dernière intervention   26
 
c'ets bon j'ai réussi à règler mon problème c'était très simple mais pas facile à trouver!!
en fate j'ai donc tou enlevé le javascript et tout et j'ai surtout remplacé un ligne que je n'écrivait pas comme il faut:
celle la:
echo '<option selected="'.$ligne2['IdCycle'].'">'.$ligne2['LibelleCycle'].'</option>';
en celle la:
echo '<option value="'.$ligne2['IdCycle'].'" selected>'.$ligne2['LibelleCycle'].'</option>';

et c'est donc à cause de cette ligne que j'avait affiché dans ma requête les libelle aux leu des codes (lorsque l'utilisateur ne modifié pas la valeur de certaine listes.

Merci encore pour ton temps concacré à mon problème
Cordialement.
0