Mise à jour de données [Résolu]

Signaler
Messages postés
102
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
23 juillet 2013
-
Messages postés
102
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
23 juillet 2013
-
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

Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
12
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
Messages postés
102
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
23 juillet 2013

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
Messages postés
102
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
23 juillet 2013

J'ai oublié de préciser que le message
Les données de la ligne ....
s'affiche correctement avec le bon numéro
Messages postés
102
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
23 juillet 2013

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
Messages postés
102
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
23 juillet 2013

n'oubliez pas le ; pour ceux qui utiliserait le code.


Au fait merci ghuysmans99