Je suis actuellement en train de tenter de mettre à jour un enregistrement spécifique dans ma base de données mais bien que j'ai vérifié la syntaxe, chrome me dit que je me suis trompé quelque part.Problèmes de syntaxe MYSQL Update Query
Tout conseil serait grandement apprécié
$title = $_POST["title"];
$alttext = $_POST["alttext"];
$description = $_POST["description"];
$price = $_POST["price"];
$id = $_POST["ID"];
$insertQuery = "UPDATE cmsproducts SET Title = '$title', Alt_Text = '$alttext', Source = '$target_path', Description = '$description', Price = $price WHERE ID = $id";
// Save the form data into the database
if ($result = $connector->query($insertQuery)){
// It worked, give confirmation
echo '<center><b><span style="color: #FF0000;">Product added to the database</span></b></center><br /><br />';
}else{
// It hasn't worked so stop. Better error handling code would be good here!
echo('<center>Sorry, there was an error saving to the database</center>');
echo "<center><b>File Name:</b> ".$target_path."<br/>";
die(mysql_error());
}
J'ai essayé la requête sans les variables pour vérifier si elle était un problème là-bas, mais il hurlait encore erreur me:
Désolé, il y avait un erreur d'enregistrement dans la base de données Vous avez une erreur dans votre syntaxe SQL; consultez le manuel qui correspond à votre version du serveur MySQL pour la bonne syntaxe à utiliser près de 'test, Source = ../images/Images /, Description = Ceci est une image test de test' à la ligne 1
echo votre variable $ insertQuery et vérifiez la requête finale. Peut-être que quelque chose est vide ou a un problème de format/encodage, qui sait (vous ne vérifiez pas l'entrée POST d'ailleurs, c'est un problème de sécurité). – Alfabravo
Nous ne pouvons pas vous aider, jusqu'à ce que vous nous fassiez savoir ce qui est passé dans les variables "post", ainsi que ce à quoi ressemble le schéma de base de données. Aussi, vous devez protéger contre l'injection SQL !! – ohmusama
Ceci est également un problème de sécurité. Vous pouvez utiliser mysql_real_escape_string ou d'autres moyens pour éviter les attaques par injection SQL. –