Mise à jour de données

Résolu
aventurier19 Messages postés 102 Date d'inscription mercredi 14 novembre 2007 Statut Membre Dernière intervention 23 juillet 2013 - 27 août 2012 à 14:59
aventurier19 Messages postés 102 Date d'inscription mercredi 14 novembre 2007 Statut Membre Dernière intervention 23 juillet 2013 - 27 août 2012 à 18:40
J'ai besoin d'un petit coup de main concernant un code.
Tout me parait bon mais cela ne fonctionne pas. Le voici :
if (isset($_GET['modifier'])) {
$variable1 = $_POST['variable1'];
$variable2 = $_POST['variable2'];
mysql_query("UPDATE `$table` SET `colonne1` '$variable1', `date` $variable2 WHERE `id` = '$_SESSION[id]'");
echo '<center>Les données de la ligne '.$_SESSION["id"].' ont été mise à jour.';
}


Juste après ce code si je fais
echo $variable1." ".$variable2." ".$_SESSION['id'];
mes trois variables s'affichent avec les bonnes valeurs.

MAIS...
ma base de données ne se met pas à jour.
Je ne comprends pas.

Merci d'avance.

5 réponses

cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
27 août 2012 à 15:57
T'aurais dû afficher ton SQL, tu aurais tout de suite vu le problème.
mysql_query("UPDATE `$table` SET `colonne1` '$variable1', `date` $variable2 WHERE `id` = {$_SESSION['id']}");

VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question
3
aventurier19 Messages postés 102 Date d'inscription mercredi 14 novembre 2007 Statut Membre Dernière intervention 23 juillet 2013
27 août 2012 à 18:35
Excuse moi tu m'as donné la bonne réponse.
Comme j'avais une erreur avec le $_SESSION['id'], j'ai enlevé les apostrophes.
Ce que j'aurai du faire c'est mettre des accolades autour de $_SESSION['id']

Il faut aussi mettre les apostrophes autour de mes variables $variable1 et $variable2

Une troisième erreur ne pouvait valider la commande ; le nom d'une des colonne n'était pas écrit correctement (oubli d'un s)

RAPPEL DE LA BONNE SOLUTION :
mysql_query("UPDATE `$table` SET `colonne1` '$variable1', `date` '$variable2' WHERE `id` = {$_SESSION['id']}")


Pour trouver l'erreur il m'a été utile d'ajouter
 or die(mysql_error())
à la commande
3
aventurier19 Messages postés 102 Date d'inscription mercredi 14 novembre 2007 Statut Membre Dernière intervention 23 juillet 2013
27 août 2012 à 15:03
J'ai oublié de préciser que le message
Les données de la ligne ....
s'affiche correctement avec le bon numéro
0
aventurier19 Messages postés 102 Date d'inscription mercredi 14 novembre 2007 Statut Membre Dernière intervention 23 juillet 2013
27 août 2012 à 16:33
mysql_query("UPDATE `$table` SET `colonne1` =  $variable1, `date` = $variable2 WHERE `id` = {$_SESSION['id']}");
me donne le même résultat que
mysql_query("UPDATE `$table` SET `colonne1` = $variable1, `date` = $variable2 WHERE `id` =  '$_SESSION[id]'");
avec ou sans guillemet autour de $variable1 et $variable2.

Pour info :
mysql_query("UPDATE `$table` SET `date`   '' WHERE `id` $_SESSION[id]");
fonctionne correctement
0

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

Posez votre question
aventurier19 Messages postés 102 Date d'inscription mercredi 14 novembre 2007 Statut Membre Dernière intervention 23 juillet 2013
27 août 2012 à 18:40
n'oubliez pas le ; pour ceux qui utiliserait le code.


Au fait merci ghuysmans99
0
Rejoignez-nous