Création
d'entreprise
Posez votre question Signaler

Erreur SQL ! trouve pas ... [Résolu]

dubuducu 389Messages postés 2 juin 2008Date d'inscription 19 mai 2010Dernière intervention - Dernière réponse le 21 nov. 2008 à 16:31
Bonjour,
je cherche, je cherche mais ne trouve pas ! Pouvez vous me rendre service concernant cette erreur sql qui m'embete un peu ! Merci d'avance !
fonction transfert !!
function transfert ()
{
$ret = false;
$img_blob = '';
$img_taille = 0;
$img_type = '';
$img_nom = '';
$taille_max = 250000;
$ret = is_uploaded_file ($_FILES['fic']['tmp_name']);
if ( !$ret )
{
echo "Problème de transfert";
return false;
}
else
{
// Le fichier a bien été reçu
$img_taille = $_FILES['fic']['size'];
if ( $img_taille > $taille_max )
{
echo "Trop gros !";
return false;
}
$img_type = $_FILES['fic']['type'];
$img_nom = $_FILES['fic']['name'];
$desc = $_POST['desc'];
$tarifs = $_POST['tarifs'];

include('config.php');

$img_blob = file_get_contents ($_FILES['fic']['tmp_name']);

$sql2 = "UPDATE images SET desc = '".$desc."' AND tarifs = '".$tarifs."' AND img_nom = '".$img_nom."' AND img_taille = '".$img_taille."' AND img_type = '".$img_type."' AND img_blob = addslashes (".$img_blob.") ";
$result2 = mysql_query($sql2) or die( "Erreur !!!!!! : " . mysql_error() ); 

return true;

}
}


L'erreur résultante est la suivante :
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 'desc = 'fv' AND tarifs = 'fv' AND img_nom = 'bordeaux_imprimer.gif' AND img_tail' at line 1

Merci beaucoup
Lire la suite 

Erreur SQL ! trouve pas »

Suggestions
4 réponses
Réponse
+1
moins plus
Salut,

'desc' est un mot réservé du langage sql (utilisé dans les clauses order by).
Ce n'est pas très recommandé de l'utiliser comme nom de colonne.
Cependant si tu ne veux pas en changer tu peux essayer de la mettre entre 'cotes inverses' :
... SET `desc` = 'fv' ...
Ajouter un commentaire
Réponse
+1
moins plus
J'avais vu le détail mais pas le gros du problème :) : la syntaxe correcte d'un update avec set c'est
set a=1, b=2, ...

toi tu mets des AND à la place des virgules
Ajouter un commentaire
Réponse
+1
moins plus
Merci vraiment !!! Super précisions !!
Dr Zoidberg (j'aime bien ce nom :) ) je vous remercie vraiment !
voici le code correct :
$sql2 = "UPDATE images SET description = '".$description."', tarifs = '".$tarifs."' ,img_nom = '".$img_nom."', img_taille = '".$img_taille."', img_type = '".$img_type."', img_blob = '".$img_blob."' ";
$result2 = mysql_query($sql2) or die( "Erreur !!!!!! : " . mysql_error() ); 


A bientot j'espere
Cordialement.
Ajouter un commentaire
Réponse
+0
moins plus
Merci pour cette precision que je ne conaissais pas !
toutefois, meme en ayant changé le champ desc en description voici mon erreur :
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 '' at line 2

Ma syntaxe deconne un peu !
Ajouter un commentaire
Ce document intitulé « erreur SQL ! trouve pas ... » 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
Passage au tout numérique : quel coût pour les particuliers ?