Page 1 sur 1

Erreur SQL avec UPDATE

Posté : 26 juil. 2007, 01:52
par OyoKooN
Bonsoir, ca fait quelques jours que je bute sur une requête SQL. Dès que je veux mettre à jour les données, l'erreur suivante s'affiche :

Code : Tout sélectionner

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'match='AAS', armereb='AK47 & GP25', armejo='M60', fonction1='', fonction2='', p' at line 1
Voici ma requête :
mysql_query("UPDATE team SET pseudo='$pseudo', rang='$rang', pays='$pays', mail='$mail', match='$match', armereb='$armereb', armejo='$armejo', fonction1='$fonction1',  fonction2='$fonction2', place='$place', meneur='$meneur ', niveau='$niveau' WHERE id='$id_membre'") OR die(mysql_error());
Si vous avez besoin du script PHP, je vous le donnerai.

Merci d'avance de votre aide :wink:

Posté : 26 juil. 2007, 09:16
par Genova
Fait un
echo "UPDATE team SET pseudo='$pseudo', rang='$rang', pays='$pays', mail='$mail', match='$match', armereb='$armereb', armejo='$armejo', fonction1='$fonction1', fonction2='$fonction2', place='$place', meneur='$meneur ', niveau='$niveau' WHERE id='$id_membre'"
Test ta requête dans PhpMyAdmin et debug là en supprimant des morceaux de ta requête jusqu'à trouver le morceau qui plante.

Posté : 26 juil. 2007, 10:01
par delcedo galaxialord
Remplace match par `match` (caractère sur la touche 7), match est un mot clé de SQL, donc du coup il ne voit pas l'attribut mais le mot clé.

Posté : 26 juil. 2007, 10:36
par zeus
Juste un petit conseil : les messages d'erreurs de MySQL commence à l'endroit de l'erreur. Du coup, comme le message que tu nous donnes commence à "match='AAS' ...", c'est ce qui a du permettre à delcedo galaxialord de trouver ton erreur.

Sinon, même si tu ne le savais surement pas au moment où tu as créé tes tables, l'utilisation de ` est une mauvaise chose car il est plus pérenne de ne pas utiliser de mot-clés réservés dans les tables.
Tu le sauras pour la prochaine fois ;)

Posté : 26 juil. 2007, 11:09
par OyoKooN
Merci beaucoup de votre aide, je vais modifier le nom de ta table. Je vous dit ensuite si ca fonctionne. :D

Posté : 26 juil. 2007, 11:15
par zeus
euh ... c'est pas le nom qui gène, c'est le champ "match" ;)

Posté : 26 juil. 2007, 11:37
par delcedo galaxialord
le nom du champ pour être plus précis
Image

Posté : 26 juil. 2007, 20:06
par OyoKooN
Il était encore tôt pour moi, je voulais dire le nom du champs oui :)
Le problème est résolu, merci beaucoup !!


Sinon, je me permet de poser cette question ici afin de ne pas créer un autre topic. J'aimerais savoir comment faire pour que des boutons radio ou une liste déroulante soit sélectionnés en fonction d'un paramètre dans la base de donnés.

Je m'explique, si par exemple, on a deux boutons radio, un avec Oui et l'autre avec Non. Si un membre coche Non, le non est enregistré dans la base de données.

Ce que j'aimerai, c'est que quand on édite le profil du membre, que le nom soit sélectionné.


Est-ce possible ?


Encore une fois, merci d'avance.

Posté : 26 juil. 2007, 22:21
par zeus
Oui, c'est possible.

Par contre, je ne te donnerais pas la réponse ici parce que le forum regorge de sujet donnant la solution. ;)
De plus, il vaut mieux créer un sujet par question que d'enchainer les questions dans un seul sujet ;)

Posté : 27 juil. 2007, 00:23
par OyoKooN
D'accords, je vais chercher ca :)

Posté : 27 juil. 2007, 00:24
par zeus
Et si ta question est résolue, pense à ajouter le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.
Tu peux réaliser cette opération en cliquant sur le bouton Image en haut à gauche de ce sujet.