Formulaire liste de selection et mysql [Résolu]

Signaler
Messages postés
88
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
13 août 2011
-
Messages postés
461
Date d'inscription
mardi 27 avril 2004
Statut
Membre
Dernière intervention
16 février 2012
-
qu'est ce qu'il peut bien manquer dans ma liste de selection pour que quand j'enregistre une modification cela se repercute sur ma base sql ?


<select size="1" name="Compte"></td>


<option value="Actif" <?php if ($modif['Etat_du_compte']== 'Actif') echo 'selected="Actif"'; ?>>Actif</option>


<option value="Bloqué" <?php if ($modif['Etat_du_compte']== 'Bloqué') echo 'selected="Bloqué"'; ?>>Bloqué</option>


<option value="Surveillance" <?php if ($modif['Etat_du_compte']== 'Surveillance') echo 'selected="Surveillance"'; ?>>Surveillance</option>


<option value="Maintenance" <?php if ($modif['Etat_du_compte']== 'Maintenance') echo 'selected="Maintenance"'; ?>>Maintenance</option>


</select>

j'ai bien fait la requette car tout le reste des infos sont bien enregistrer et le nom du champ est bon ...

ma requette sql


if ($action == "maj")


{


$query "UPDATE comptes SET Etat_du_compte'$Etat_du_compte', Compte_FTP ='$Compte_FTP', Nom_FTP ='$Nom_FTP', login_ftp ='$login_ftp', pass_ftp ='$pass_ftp', Compte_Mail ='$Compte_Mail', login_mail ='$login_mail', pass_mail ='$pass_mail', Reparation_Materiel ='$Reparation_Materiel', Compte_SQL ='$Compte_SQL', psaql ='$psaql', comentaires ='$comentaires' WHERE ncompte = '$blod'";

lorsque je selectionne bloqué et que je met a jours les infos elles ne s'ecrivent pas sur la base sql ...

19 réponses

Messages postés
461
Date d'inscription
mardi 27 avril 2004
Statut
Membre
Dernière intervention
16 février 2012

Oui ben c cool n empeche que inverse ton select et ton td. et pense a utiliser des $_POST et $_GET c plus jolie et plus conventionnel, plus sur aussi
@+
accepte la reponse.


<HR>
On ne peut pas savoir tout faire, mais on peut tout apprendre avec du travail. Morpheus262

PS: Besoin d aide pour developper, besoin d un collaborateur pour faire votre site, contacter moi par mail
l
Messages postés
461
Date d'inscription
mardi 27 avril 2004
Statut
Membre
Dernière intervention
16 février 2012

une erreur de nom a mon avis.
ton selct s appel compte.

donc ta variable a recuperer en phph est $compte ou plus exactement $_POST['compte']

or dans ta requette compte n apparait pas
$query "UPDATE comptes SET Etat_du_compte'$Etat_du_compte', Compte_FTP ='$Compte', Nom_FTP ='$Nom_FTP', login_ftp ='$login_ftp', pass_ftp ='$pass_ftp', Compte_Mail ='$Compte_Mail', login_mail ='$login_mail', pass_mail ='$pass_mail', Reparation_Materiel ='$Reparation_Materiel', Compte_SQL ='$Compte_SQL', psaql ='$psaql', comentaires ='$comentaires' WHERE ncompte = '$blod'";


<HR>
On ne peut pas savoir tout faire, mais on peut tout apprendre avec du travail. Morpheus262

PS: Besoin d aide pour developper, besoin d un collaborateur pour faire votre site, contacter moi par mail
l
Messages postés
461
Date d'inscription
mardi 27 avril 2004
Statut
Membre
Dernière intervention
16 février 2012

OUPs c pas le bon que j ai modifie
$query "UPDATE comptes SET Etat_du_compte'$compte', Compte_FTP ='$Compte_FTP'', Nom_FTP ='$Nom_FTP', login_ftp ='$login_ftp', pass_ftp ='$pass_ftp', Compte_Mail ='$Compte_Mail', login_mail ='$login_mail', pass_mail ='$pass_mail', Reparation_Materiel ='$Reparation_Materiel', Compte_SQL ='$Compte_SQL', psaql ='$psaql', comentaires ='$comentaires' WHERE ncompte = '$blod'";


<HR>
On ne peut pas savoir tout faire, mais on peut tout apprendre avec du travail. Morpheus262

PS: Besoin d aide pour developper, besoin d un collaborateur pour faire votre site, contacter moi par mail
l
Messages postés
88
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
13 août 2011

Merci beaucoup pour ton aide remarqué morpheus sur l'ensemble de mes posts et surtout de ta patience.
J'ai effectué la modification et je me retrouve malheuruesement avec le même problemeje ne comprend pas voila le code entier j'ai dus faire encore bien d'autre erreurs on vois bien que je debute ;) :


<?


session_start();


{


include("config.php");


db_connect();


$sql "SELECT * FROM comptes WHERE nutilisateur '$id'";


$resultat = mysql_query ($sql);


$modif = mysql_fetch_array ($resultat);


if ($action == "maj")


{


$query "UPDATE comptes SET Etat_du_compte'$compte', Compte_FTP ='$Compte_FTP'', Nom_FTP ='$Nom_FTP', login_ftp ='$login_ftp', pass_ftp ='$pass_ftp', Compte_Mail ='$Compte_Mail', login_mail ='$login_mail', pass_mail ='$pass_mail', Reparation_Materiel ='$Reparation_Materiel', Compte_SQL ='$Compte_SQL', psaql ='$psaql', comentaires ='$comentaires' WHERE ncompte = '$blod'";


$result = mysql_query($query);


}


elseif ($action == "suppr")


{


$query "DELETE FROM comptes WHERE ncompte '$blod'";


mysql_query ($query);


// mysql_close($db);


viewheader();


echo"
UTILISATEUR SUPPRIME
";


viewfooter();


}


}


viewheader();


echo"";


?>




MODIFICATION COMPTE


<hr>


&nbsp;





<center>Attention, toute suppression est définitive.</center></td>


</tr>


</table>


<center>


<form action="maj2.php?id=<?php echo $_SESSION['smartid'] ?>" method="post" enctype="multipart/form-data">


">


<center>

Identifiant : , " readonly>,

----

Compte FTP : , value="1">,

----

<center>

<select size=\"1\" name=\"Compte\"></td>

<option value=\"Actif\" <?php if ($modif['Etat_du_compte']== 'Actif') echo 'selected=\"Actif\"'; ?>>Actif</option>

<option value=\"Bloqué\" <?php if ($modif['Etat_du_compte']== 'Bloqué') echo 'selected=\"Bloqué\"'; ?>>Bloqué</option>

<option value=\"Surveillance\" <?php if ($modif['Etat_du_compte']== 'Surveillance') echo 'selected=\"Surveillance\"'; ?>>Surveillance</option>

<option value=\"Maintenance\" <?php if ($modif['Etat_du_compte']== 'Maintenance') echo 'selected=\"Maintenance\"'; ?>>Maintenance</option>

</select>

----

<center>

Repertoire : , ">,

----

<center>

Login FTP : , ">,

----

<center>

Passe FTP : , ">,

----

Compte Mail : , value="1">,

<center>

Login Mail : , ">,

----

<center>

Passe Mail : , ">,

----

<center>

Reparation : , value="1">,

<center>

Compte SQL : , value="1">,

<center>

Passe SQL : , ">,

<center>

Commentaires : , ">


<select name="action" class="textfield" >

<option value="maj"> Enregistrer</option>

<option value="suppr"> Supprimer</option>

</select>

, </form>


</center>


<?


viewfooter();?>
Messages postés
461
Date d'inscription
mardi 27 avril 2004
Statut
Membre
Dernière intervention
16 février 2012

Ton probleme c'est que ton champs etat_compte ne change pas de valeur apres une mise a jour c bien ca ?? tu as pas de message d erreur ??

et de rien pour l aide c le but du forum.


<HR>
On ne peut pas savoir tout faire, mais on peut tout apprendre avec du travail. Morpheus262

PS: Besoin d aide pour developper, besoin d un collaborateur pour faire votre site, contacter moi par mail
l
Messages postés
461
Date d'inscription
mardi 27 avril 2004
Statut
Membre
Dernière intervention
16 février 2012

tien une petite erreur mais je sais pas si ca viens de la. tu as deux cotes a la suite.
$query "UPDATE comptes SET Etat_du_compte'$compte', Compte_FTP ='$Compte_FTP', Nom_FTP ='$Nom_FTP', login_ftp ='$login_ftp', pass_ftp ='$pass_ftp', Compte_Mail ='$Compte_Mail', login_mail ='$login_mail', pass_mail ='$pass_mail', Reparation_Materiel ='$Reparation_Materiel', Compte_SQL ='$Compte_SQL', psaql ='$psaql', comentaires ='$comentaires' WHERE ncompte = '$blod'";

voial recopie la requete et dis moi si ca amrche.

<HR>
On ne peut pas savoir tout faire, mais on peut tout apprendre avec du travail. Morpheus262

PS: Besoin d aide pour developper, besoin d un collaborateur pour faire votre site, contacter moi par mail
l
Messages postés
88
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
13 août 2011

j'ai tester ca ne change pas en revenche j'ai fait cette procedure :

j'ai cree le compte et je l'ai mis a Maintenance ( a la creation avec un autre formulaire utilisant insert into ...)

je regardes ensuite la base sur mysql et je retrouve bien Etat_du_compte avec Maintenance.

je vais sur la page d'update (sur laquel j'ai le probleme) il m'affiche bien Maintenance aussi et a ce moment je change pour Bloqué et je vais voir la base mysql je m'appercois qu'il ni a plus rien dans le champ Etat_du_compte meme pas "NULL" donc je peux en conclure que la page de mise a jours effectue bien une mise a jours mais elle remplace par un blanc et c'est certainement pour cela que la liste deroulante se met sur Actif sans arret ...

Je n'ai elas aucuns message d'erreur.
Messages postés
461
Date d'inscription
mardi 27 avril 2004
Statut
Membre
Dernière intervention
16 février 2012

Ta variable $blod correspond a quoi elle n a jamais de valeur.

WHERE ncompte = '$blod' n a donc pas de valeur

Alors a mon avis ca doit etre $id ou $_GET['id']

essaie avec where ncompte='$id'

<form action="maj2.php?id=<?php echo $_SESSION['smartid'] ?>" method="post" enctype="multipart/form-data">





">

c est deux ligne la sont identique tu peux supprimer la deuxieme.




<HR>



On ne peut pas savoir tout faire, mais on peut tout apprendre avec du travail. Morpheus262

PS: Besoin d aide pour developper, besoin d un collaborateur pour faire votre site, contacter moi par mail
l
Messages postés
88
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
13 août 2011

blod et id en effet au dbut je ne comprenait pas pourquoi mais rien du tout ne se mettait a jours avec $id j'ai changé par une variable "bidon" pour voir si cela me faisait une erreur et etrangement les autres champs (hors la liste de selection) fonctionnent a la modification.

si je change $blod par $id je ne peux plus mettre a jours les données du formulaire

j'ai bien supprimé la seconde ligne .
sinon rien a signaler la liste deroulante ne fiat pas ce qu'elle devrait
Messages postés
461
Date d'inscription
mardi 27 avril 2004
Statut
Membre
Dernière intervention
16 février 2012

Recapitulons alors:
- tu as bien modifé le blod par id.
-enelevr le ' de trop dans la requete.

et le resultat c est que tous les champs se mettent a jour sauf celui de la lste deroulante ?

<HR>
On ne peut pas savoir tout faire, mais on peut tout apprendre avec du travail. Morpheus262

PS: Besoin d aide pour developper, besoin d un collaborateur pour faire votre site, contacter moi par mail
l
Messages postés
88
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
13 août 2011

alors j'ai du laissé blod au lieu de id car cela ne met plus a jours le reste des champs.
j'ai recopié la requette que tu as corrigé cela me donne le code suivant :


<?


session_start();


{


include("config.php");


db_connect();


$sql "SELECT * FROM comptes WHERE nutilisateur '$id'";


$resultat = mysql_query ($sql);


$modif = mysql_fetch_array ($resultat);


if ($action == "maj")


{


$query "UPDATE comptes SET Etat_du_compte'$compte', Compte_FTP ='$Compte_FTP', Nom_FTP ='$Nom_FTP', login_ftp ='$login_ftp', pass_ftp ='$pass_ftp', Compte_Mail ='$Compte_Mail', login_mail ='$login_mail', pass_mail ='$pass_mail', Reparation_Materiel ='$Reparation_Materiel', Compte_SQL ='$Compte_SQL', psaql ='$psaql', comentaires ='$comentaires' WHERE ncompte = '$blod'";


$result = mysql_query($query);


}


elseif ($action == "suppr")


{


$query "DELETE FROM comptes WHERE ncompte '$blod'";


mysql_query ($query);


// mysql_close($db);


viewheader();


echo"
UTILISATEUR SUPPRIME
";


viewfooter();


}


}


viewheader();


echo"";


?>




MODIFICATION COMPTE


<hr>


&nbsp;





<center>Attention, toute suppression est définitive.</center></td>


</tr>


</table>


<center>


<form action="maj2.php?id=<?php echo $_SESSION['smartid'] ?>" method="post" enctype="multipart/form-data">


<center>

Identifiant : , " readonly>,

----

Compte FTP : , value="1">,

----

<center>

<select size=\"1\" name=\"Compte\"></td>

<option value=\"Actif\" <?php if ($modif['Etat_du_compte']== 'Actif') echo 'selected=\"Actif\"'; ?>>Actif</option>

<option value=\"Bloqué\" <?php if ($modif['Etat_du_compte']== 'Bloqué') echo 'selected=\"Bloqué\"'; ?>>Bloqué</option>

<option value=\"Surveillance\" <?php if ($modif['Etat_du_compte']== 'Surveillance') echo 'selected=\"Surveillance\"'; ?>>Surveillance</option>

<option value=\"Maintenance\" <?php if ($modif['Etat_du_compte']== 'Maintenance') echo 'selected=\"Maintenance\"'; ?>>Maintenance</option>

</select>

----

<center>

Repertoire : , ">,

----

<center>

Login FTP : , ">,

----

<center>

Passe FTP : , ">,

----

Compte Mail : , value="1">,

<center>

Login Mail : , ">,

----

<center>

Passe Mail : , ">,

----

<center>

Reparation : , value="1">,

<center>

Compte SQL : , value="1">,

<center>

Passe SQL : , ">,

<center>

Commentaires : , ">


<select name="action" class="textfield" >

<option value="maj"> Enregistrer</option>

<option value="suppr"> Supprimer</option>

</select>

, </form>


</center>


<?


viewfooter();?>
Messages postés
88
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
13 août 2011

voici ma derniere modification j'ai remplacé par id tout ce qui était en blod tout fonctionne sauf la liste de selection :


<?


session_start();


{


include("config.php");


db_connect();


$sql "SELECT * FROM comptes WHERE nutilisateur '$id'";


$resultat = mysql_query ($sql);


$modif = mysql_fetch_array ($resultat);


if ($action == "maj")


{


$query "UPDATE comptes SET Etat_du_compte'$compte', Compte_FTP ='$Compte_FTP', Nom_FTP ='$Nom_FTP', login_ftp ='$login_ftp', pass_ftp ='$pass_ftp', Compte_Mail ='$Compte_Mail', login_mail ='$login_mail', pass_mail ='$pass_mail', Reparation_Materiel ='$Reparation_Materiel', Compte_SQL ='$Compte_SQL', psaql ='$psaql', comentaires ='$comentaires' WHERE ncompte = '$id'";


$result = mysql_query($query);


}


elseif ($action == "suppr")


{


$query "DELETE FROM comptes WHERE ncompte '$id'";


mysql_query ($query);


// mysql_close($db);


viewheader();


echo"
UTILISATEUR SUPPRIME
";


viewfooter();


}


}


viewheader();


echo"";


?>




MODIFICATION COMPTE


<hr>


&nbsp;





<center>Attention, toute suppression est définitive.</center></td>


</tr>


</table>


<center>


<form action="maj2.php?id=<?php echo $_SESSION['smartid'] ?>" method="post" enctype="multipart/form-data">


<center>

Identifiant : , " readonly>,

----

Compte FTP : , value="1">,

----

<center>

<select size=\"1\" name=\"Compte\"></td>

<option value=\"Actif\" <?php if ($modif['Etat_du_compte']== 'Actif') echo 'selected=\"Actif\"'; ?>>Actif</option>

<option value=\"Bloqué\" <?php if ($modif['Etat_du_compte']== 'Bloqué') echo 'selected=\"Bloqué\"'; ?>>Bloqué</option>

<option value=\"Surveillance\" <?php if ($modif['Etat_du_compte']== 'Surveillance') echo 'selected=\"Surveillance\"'; ?>>Surveillance</option>

<option value=\"Maintenance\" <?php if ($modif['Etat_du_compte']== 'Maintenance') echo 'selected=\"Maintenance\"'; ?>>Maintenance</option>

</select>

----

<center>

Repertoire : , ">,

----

<center>

Login FTP : , ">,

----

<center>

Passe FTP : , ">,

----

Compte Mail : , value="1">,

<center>

Login Mail : , ">,

----

<center>

Passe Mail : , ">,

----

<center>

Reparation : , value="1">,

<center>

Compte SQL : , value="1">,

<center>

Passe SQL : , ">,

<center>

Commentaires : , ">


<select name="action" class="textfield" >

<option value="maj"> Enregistrer</option>

<option value="suppr"> Supprimer</option>

</select>

, </form>


</center>


<?


viewfooter();?>
Messages postés
461
Date d'inscription
mardi 27 avril 2004
Statut
Membre
Dernière intervention
16 février 2012

Oui ok mais il n'est pas logique que ca amrche avc blod il n a pas de valuer dedans.


if ($action == "maj")


{
echo ' id '.$id.' blod '.$blod.' compte '.$compte;

rajoute cette ligne et recopie ici le resultat.

<HR>
On ne peut pas savoir tout faire, mais on peut tout apprendre avec du travail. Morpheus262

PS: Besoin d aide pour developper, besoin d un collaborateur pour faire votre site, contacter moi par mail
l
Messages postés
88
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
13 août 2011

id 140 blod compte
Messages postés
88
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
13 août 2011

ceci aprés la modification de TOUT les blod par id ce deviens un peut plus logique ;)
Messages postés
461
Date d'inscription
mardi 27 avril 2004
Statut
Membre
Dernière intervention
16 février 2012

ok tres bien alors je sais pas si c'est ca mais c ma derniere id lol
car en faite ta modif marche tres bien mais ton select ne renvoie pas de valeur

alors actuellement tu a ton <select...></td> essaye de les inverser ca peut jouer.


<HR>
On ne peut pas savoir tout faire, mais on peut tout apprendre avec du travail. Morpheus262

PS: Besoin d aide pour developper, besoin d un collaborateur pour faire votre site, contacter moi par mail
l
Messages postés
88
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
13 août 2011

je suis mdr de ma betise j'ai trouvé la soluce grace a toi. en fait en regardant le select j'ai pointé sur la requette update.
j'ai vu
<select size= "1" name=" C ompte"></td>

je regarde a nouveau la requete au dessu et j'ai la surprise de voir .... :


$query "UPDATE comptes SET Etat_du_compte '$ c ompte', Compte_FTP ='$Compte_FTP', Nom_FTP ='$Nom_FTP', login_ftp ='$login_ftp', pass_ftp ='$pass_ftp', Compte_Mail ='$Compte_Mail', login_mail ='$login_mail', pass_mail ='$pass_mail', Reparation_Materiel ='$Reparation_Materiel', Compte_SQL ='$Compte_SQL', psaql ='$psaql', comentaires ='$comentaires' WHERE ncompte = '$id'";

je remplace par la majuscule et miracle tout se met a fonctionner ...

Merci beaucoup j'aurais aussi une futur question bien plus simple par la suite concernant l'envois d'un mail automatique à moi pour me prevenir ainsi qu'à un utilisateur quand une personne s'enregistre sur un formulaire et je serais heureux que tu puisse y repondre je la poserais un peut plus tars quand j'aurais bien remis en forme deja ce que j'ai. Merci beaucoup en tout cas
Messages postés
88
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
13 août 2011

merci a toi je vais faire appel a ta connaissance pour le mail :)
Messages postés
461
Date d'inscription
mardi 27 avril 2004
Statut
Membre
Dernière intervention
16 février 2012

OKi mais je ne pourrais pas te repondre aujourd hui peut etre car je ne suis plus en ligne tres longtemps.


<HR>
On ne peut pas savoir tout faire, mais on peut tout apprendre avec du travail. Morpheus262

PS: Besoin d aide pour developper, besoin d un collaborateur pour faire votre site, contacter moi par mail
l