Problème Requête UPDATE vers MySql
garinsha20
Messages postés
20
Date d'inscription
Statut
Membre
Dernière intervention
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
Je vous explique le contexte de mon problème!
J'ai un formulaire de contact que tout utilisateur remplit, et j'aimerai que celui-ci une fois inscrit puisse revenir sur son profil et modifier ses données!
Voici mon code
Je récupère les noms des champs dans le formulaire :
<form method="POST" action="valider.php" name="f">
<input type="hidden" name="id" value="<? echo $res['idmaitre']; ?>">
<input type="hidden" name="nom" value="<? echo $res['nommaitre']; ?>">
<input type="hidden" name="prenom" value="<? echo $res['prenommaitre']; ?>">
<input type="hidden" name="email" value="<? echo $res['mailmaitre']; ?>">
<input type="hidden" name="mdp" value="<? echo $res['mdpmaitre']; ?>">
<input type="hidden" name="nom1" value="<? echo $res['nomanimal']; ?>">
<input type="hidden" name="deces" value="<? echo $res['datedecesanimal']; ?>">
<input type="hidden" name="age" value="<? echo $res['ageanimal']; ?>">
<input type="hidden" name="commentaire" value="<? echo $res['commentaireanimal']; ?>">
<input type="hidden" name="animal" value="<? echo $res['catanimal']; ?>">
<input type="hidden" name="race" value="<? echo $res['raceanimal']; ?>">
</form>
Et voici ma requête dans ma page "valider.php" :
$update=mysql_query ("UPDATE Maitre
SET nommaitre='".$nom."',
prenommaitre='".$prenom."',
mailmaitre='".$email."',
mdpmaitre='".$mdp."',
etatmaitre='A'
WHERE idmaitre='".$idmaitre."' ");
mysql_query($update) or die ("plantage de l'insertion : ".$update);
Voilà l'état de la situation.
La page "valider.php" afficher le message d'erreur dans l'echo "plantage de l'insertion", et rien ne se modifie sous MySql.
Y'aurai t'il de l'aide svp!
Merci d'avance.
Je vous explique le contexte de mon problème!
J'ai un formulaire de contact que tout utilisateur remplit, et j'aimerai que celui-ci une fois inscrit puisse revenir sur son profil et modifier ses données!
Voici mon code
Je récupère les noms des champs dans le formulaire :
<form method="POST" action="valider.php" name="f">
<input type="hidden" name="id" value="<? echo $res['idmaitre']; ?>">
<input type="hidden" name="nom" value="<? echo $res['nommaitre']; ?>">
<input type="hidden" name="prenom" value="<? echo $res['prenommaitre']; ?>">
<input type="hidden" name="email" value="<? echo $res['mailmaitre']; ?>">
<input type="hidden" name="mdp" value="<? echo $res['mdpmaitre']; ?>">
<input type="hidden" name="nom1" value="<? echo $res['nomanimal']; ?>">
<input type="hidden" name="deces" value="<? echo $res['datedecesanimal']; ?>">
<input type="hidden" name="age" value="<? echo $res['ageanimal']; ?>">
<input type="hidden" name="commentaire" value="<? echo $res['commentaireanimal']; ?>">
<input type="hidden" name="animal" value="<? echo $res['catanimal']; ?>">
<input type="hidden" name="race" value="<? echo $res['raceanimal']; ?>">
</form>
Et voici ma requête dans ma page "valider.php" :
$update=mysql_query ("UPDATE Maitre
SET nommaitre='".$nom."',
prenommaitre='".$prenom."',
mailmaitre='".$email."',
mdpmaitre='".$mdp."',
etatmaitre='A'
WHERE idmaitre='".$idmaitre."' ");
mysql_query($update) or die ("plantage de l'insertion : ".$update);
Voilà l'état de la situation.
La page "valider.php" afficher le message d'erreur dans l'echo "plantage de l'insertion", et rien ne se modifie sous MySql.
Y'aurai t'il de l'aide svp!
Merci d'avance.
A voir également:
- Problème Requête UPDATE vers MySql
- Windows update bloqué - Guide
- Winget update - Guide
- Asus live update - Télécharger - Utilitaires
- Windows 7 vers windows 10 - Accueil - Mise à jour
- Mysql community server - Télécharger - Bases de données
4 réponses
Salut,
Essaye d'afficher $update avant de l'exécuter et donne nous le résultat :
Essaye d'afficher $update avant de l'exécuter et donne nous le résultat :
$update="UPDATE Maitre SET nommaitre='".$nom."', prenommaitre='".$prenom."', mailmaitre='".$email."', mdpmaitre='".$mdp."', etatmaitre='A'"; echo $update; mysql_query($update) or die ("plantage de l'insertion");
Bizarre que l'affichage de $update te donne 1. Normalement il devrait t'afficher ta requête SQL qu'il va exécuter. Tu es sûr de bien avoir recopié mon code ?
Essaye de faire ceci :
$update="UPDATE Maitre SET nommaitre='".$nom."', prenommaitre='".$prenom."', mailmaitre='".$email."', mdpmaitre='".$mdp."', etatmaitre='A'"; $result = mysql_query($update); if(!$result) die('Requête invalide : ' . mysql_error()); else echo "Mise à jour effectuée";
Alors là petit amélioration mais problème dans la bdd MySql!
le nouveau code renvoi ceci :
Mise à jour effectuéeplantage de l'insertion2 :
et le pb sous mysql est que en fait:
j'avais des inscrits de ce style :
1. zidane zinedine zzizou@.com
2. rafael nadal rafa@.com
3. blanc laurent loloà.com
etc..
et maintenant ça me donne ceci dans la base
1. zidane zinedine zzizou@.com
2. zidane zinedine zzizou@.com
3. zidane zinedine zzizou@.com
4. zidane zinedine zzizou@.com
5. zidane zinedine zzizou@.com
est-ce Normal?
Avant ceci , la base de données ne bougeait pas!, il n'y avait aucun UPDATE
là ça a écrasé les autres en fait
le nouveau code renvoi ceci :
Mise à jour effectuéeplantage de l'insertion2 :
et le pb sous mysql est que en fait:
j'avais des inscrits de ce style :
1. zidane zinedine zzizou@.com
2. rafael nadal rafa@.com
3. blanc laurent loloà.com
etc..
et maintenant ça me donne ceci dans la base
1. zidane zinedine zzizou@.com
2. zidane zinedine zzizou@.com
3. zidane zinedine zzizou@.com
4. zidane zinedine zzizou@.com
5. zidane zinedine zzizou@.com
est-ce Normal?
Avant ceci , la base de données ne bougeait pas!, il n'y avait aucun UPDATE
là ça a écrasé les autres en fait
Oui c complètement normal. Ta requête ne précise pas de clause WHERE. Elle met donc à jour tous les enregistrements présents dans ta table. Il faudrait que tu puisses affiner ta mise à jour suivant un critère pour ne mettre à jour que l'enregistrement qui va bien. A mon avis ta requête devrait ressembler à ça :
$update="UPDATE Maitre SET nommaitre='".$nom."', prenommaitre='".$prenom."', mailmaitre='".$email."', mdpmaitre='".$mdp."', etatmaitre='A' WHERE idmaitre='".$id."'";Le plantage de l'insertion 2 je ne vois pas d'où il vient car je ne dois pas avoir le bout de code qui affiche ce message.
plantage de l'insertion : 1
et avec le code echo $update, ceci :
1plantage de l'insertion : 1
Voilà chef !
plantage de l'insertion : 1
et avec le code echo $update, ceci :
1plantage de l'insertion : 1
Y'a une soluce?
Merci