Requête SQL

Résolu/Fermé
Xeis - 6 déc. 2013 à 11:51
 Xeis - 9 déc. 2013 à 18:34
Bonjour,


Alors voilà mon problème est simple (enfin pas tant que ca vue que ca fait 2h que je tourne dessus :D)

$results = mysql_query("UPDATE 'automate'.'domains_urls' SET 'keywords' = ".addslashes($keywords)) or die (mysql_error());

Je voudrais éxécuter cette ligne pour qu'il update ma base, dans la variable $keywords

j'ai plusieurs mots a la suite ex: abc_salut,salut,bce_bonjour,bonjour

et il me renvoie un message d'erreur : 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 'abc_salut,salut,bce_bonjour,bonjour' at line 1

Lorsque je remplace la variable par le texte en dur directement tous marche correctement...

Merci d'avance de votre aide.

3 réponses

Nhay Messages postés 838 Date d'inscription vendredi 2 novembre 2012 Statut Membre Dernière intervention 17 décembre 2015 126
6 déc. 2013 à 12:43
Bonjour,
Commence par essayer d'entourer ta variable keywords avec des apostrophes ou guillemets.

Pour tes noms de champs, échappe-les avec ' au lieu de '
1
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
Modifié par Reivax962 le 9/12/2013 à 17:19
Pour info, la forum CCM remplace tous les guillemets simples, apostrophes française ou inversée par des apostrophes droites.
' ' ' 

Là j'en ai mis trois différentes, mais ils sont tous remplacés par '.
Du coup, on ne voit pas la différence dans ce que tu as tapé ^^
Et si ça se trouve, Xeis utilisait les bons.
0
Doctor C Messages postés 627 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 19 février 2016 398
9 déc. 2013 à 15:39
Un bon truc pour débugger des requêtes SQL est de simplement l'afficher à l'écran pour voir si ton code donne bien la requête voulue:

$req = "UPDATE 'automate'.'domains_urls' SET 'keywords' = ".addslashes($keywords);

echo $req;

$results = mysql_query($req) or die (mysql_error()); 


Ça devrait t'aider à trouver le problème plus rapidement.
0
Merci pour vos réponses j'ai réussi a résoudre mon problème, et oui j'utilisais les bonnes apostrophes mais elles ont été modifier par le forum ^^
0