Posez votre question Signaler

Erreur MySQL : 1064

startweb - Dernière réponse le 11 jun 2008 à 16:55
Bonjour.
J’ai un problème avec une requête SQL erreur MySQL : 1064
Voici l'erreur
Erreur lors de l'accès à la base de données : Syntaxe SQL incorrecte : UPDATE produit SET titre = 'aaa', soustitre = 'aaa', texte = 'aaa', image = 'logo-start-web-conception-p.jpg', legende = '', where id = 28
Erreur MySQL : 1064 (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 'where id = 28' at line 7)
La requête est sur la modification d'une table de produit ... l’ajout marche très bien
Merci d'avance pour l'aide apporté
Lire la suite 

Erreur MySQL : 1064 »

8 réponses
Réponse
+0
moins plus
Bonjour, je te propose d'essayer comme ceci:
"UPDATE produit SET (`titre` = 'aaa', `soustitre` = 'aaa', `texte` = 'aaa', `image` = 'logo-start-web-conception-p.jpg', `legende` = '', where `id` = '28 ' "
pour differencier colonne de la bdd entre `` et valeurs entre ' '
Ajouter un commentaire
Réponse
+0
moins plus
merci mais ca ne marche pas

Erreur lors de l'accès à la base de données : Syntaxe SQL incorrecte : UPDATE produit SET titre = 'aaa', soustitre = 'aaa', texte = 'aaassss', image = 'logo-start-web-conception-p.jpg', legende = '', where id = '28'
Erreur MySQL : 1064 (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 'where id = '28'' at line 7)

la requete : elseif ($a == "modif")
{

if ($suprimage == "oui") {

if (file_exists($_SERVER[DOCUMENT_ROOT]."/image/produit/".$image)) {
unlink($_SERVER[DOCUMENT_ROOT]."/image/produit/".$image);
}
$image = ""; $legende = ""; $legendeuk = "";
}

require_once("upload.php");
// nouvel objet Upload
$Upload = new Upload();
// taille maxi des fichiers
$Upload -> Maxfilesize = '2048';
// nombre de fichier à chopper
$Upload -> Fields = 1;
// debut d'utilisation
$Upload -> InitForm();

// test des extention valides (là, on prend tout)
$Upload -> Extension = '';
// definition du repertoire de reception d'upload
$Upload -> DirUpload = '../image/produit';
// debut de la classe Upload
$Upload -> Execute();
// on recupere le nom du champs image (le premier)
$image2=$Upload->Infos[1]['nom'];


$db = new accesBD;

// on ecrit la requete
$requete = " UPDATE produit SET
titre = '$titre',
soustitre = '$soustitre',
texte = '$texte',
image = '$image',
legende = '$legende',
where id = '$id' ";

$db->executeQuery ($requete);
header("Location: index.php?message=Modification enregistrée");
Ajouter un commentaire
Réponse
+0
moins plus
Essaye d'encadrer ce que tu ecris entre crochets par des apostrophes: ' comme ceci:
['...']
Ajouter un commentaire
Réponse
+0
moins plus
ca me donne comme erreur
Erreur lors de l'accès à la base de données : Syntaxe SQL incorrecte : UPDATE produit SET titre = ['aaa'], soustitre = ['aaa'], texte = ['aaadd'], image = ['logo-start-web-conception-p.jpg'], legende = [''], where id = ['28']
Erreur MySQL : 1064 (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 '['aaa'], soustitre = ['aaa'], texte = ['aaadd'], image )

c'est un programme qui sert a ajouter, suprimer ou modifier ca marche mais pas la modification je pense que sa vient de where id = '$id' " Mais ...
Ajouter un commentaire
Réponse
+0
moins plus
besion d'aide SVP
Ajouter un commentaire
Réponse
+0
moins plus
Ah mais non! :p
Ce n'est pas les valeurs des requetes qu'il faut mettre entre crochet (enleve les), ça c'estait bon, ce sont les trucs du genre $_SERVER[DOCUMENT_ROOT]
Exemple: $_SERVER['DOCUMENT_ROOT']
gloomy94 - 11 jun 2008 à 16:55
Bonjour,

Est-ce que tes [...] peuvent aussi marcher pour:

LOAD DATA test INFILE 'C:\Dokumente und Einstellungen\vida\Desktop\lien vers BDD.xml'
INTO TABLE cd

Car j'ai le même problème que Starweb. Si oui ou les placer car j'ai essayer un peu partout et je ce message s'affiche toujours.

Merci d'avance
Ajouter un commentaire
Réponse
+0
moins plus
Il faut enlever la virgule avant le WHERE
, where
Ajouter un commentaire
Ce document intitulé « erreur MySQL : 1064 » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook