Rechercher : dans
Par :

Unexpected t_constant_encapsed_string

Dernière réponse le 11 mar 2009 à 02:33:01 gervais, le 10 mar 2009 à 22:27:00 
 Signaler ce message aux modérateurs

Bonjour,
Est-ce que quelqu'un peut m'aider, il y a une erreur dans ma requete mais je ne peux la trouver.
J'ai soit un message " unexpected t_constant_encapsed_string"
Soit un message unexpected t_string_encapsed_string
Soit un message me disant une erreur near where

$req = 'INSERT INTO images (img_taille, img_type, img_blob ) VALUES ('.$img_taille.','.$img_type.','.addslashes ($img_blob).') where nom='.$img_nom.'';

Merci de votre aide

Configuration: Linux
Firefox 3.0.6

Meilleures réponses pour « unexpected t_constant_encapsed_string » dans :
[PHP] Parse error, unexpected T_STRING, expecting ',' or ';' VoirCette erreur, fréquente, se produit notamment lorsqu'un guillemet est présent dans une chaîne délimitée par ce même type de guillemets, par exemple :
PHP Parse error: unexpected '<' in ... eval()'d code on line VoirSymptômes Lors de l'utilisation de la fonction eval() en PHP, ce dernier se plaint et vous affiche un message de la forme suivante : PHP Parse error: syntax error, unexpected '
Parse error: syntax error, unexpected $end VoirLorsque l'on programme en Php, on se retrouve inévitablement un jour devant ce genre d'erreur: Parse error: syntax error, unexpected $end in Command line code on line 1 En français, ça signifie grossièrement: "Erreur d'analyse du code: il y a une...

1

Alain_42, le 10 mar 2009 à 22:38:22

Bonsoir,

essayes avec cette forme:

$req = "INSERT INTO images (img_taille, img_type, img_blob ) VALUES ('".$img_taille."','".$img_type."','".addslashes ($img_blob)."') WHERE nom='".$img_nom."'"; 

Répondre à Alain_42

2

gervais, le 10 mar 2009 à 22:57:37

Merci, ca ne fonctionne pas plus, le serveur me retourne cette 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 'WHERE nom='GervaisRuel.JPG'' at line 1

Répondre à gervais

3

Alain_42, le 10 mar 2009 à 23:09:26

De mémoire, mais à vérifier, il n'y a pas de condition WHERE avec INSERT INTO

Si c'est une mise à jour utilises UPDATE...

et la tu mettra WHERE....

Répondre à Alain_42

4

gervais, le 11 mar 2009 à 00:29:39

Merci, Alain,
J'essai avec update mais il me donne encore une erreur de syntaxe
La requete devrait etre qcq comme ça il me semble


$req = "update images 'img_taille='".$img_taille."' and img_type='".$img_type."' and img_blob='".addslashes ($img_blob)."'' where nom = '".$img_nom."'";

Répondre à gervais

5

bissdebrazza, le 11 mar 2009 à 00:37:49

Ta requête est fausse!

UPDATE "nom de table"
SET "colonne 1" = [nouvelle valeur]
WHERE {condition}

voila une forme de requête update «Il faut avoir déjà beaucoup appris de choses pour savoir demander ce qu'on ne sait pas.»
Jean-Jacques ROUSSEAU

Répondre à bissdebrazza

6

gervais, le 11 mar 2009 à 01:23:36

Merci pour votre aide,
J'ai du le faire en 3 requetes mais cela fonctionne


$req = "update images set img_taille='".$img_taille."' where nom = '".$img_nom."'";
$ret = mysql_query ($req) or die (mysql_error ());

$req = "update images set img_type='".$img_type."' where nom = '".$img_nom."'";
$ret = mysql_query ($req) or die (mysql_error ());

$req = "update images set img_blob='".addslashes ($img_blob)."' where nom = '".$img_nom."'";
$ret = mysql_query ($req) or die (mysql_error ());

Répondre à gervais

7

bissdebrazza, le 11 mar 2009 à 01:46:34

Salut!
moi je te la fais en une seule requête:

$req = "update images set img_taille='".$img_taille."',img_type='".$img_type."',img_blob='".addslashes ($img_blob)."' where nom = '".$img_nom."'"; 
$ret = mysql_query ($req) or die (mysql_error ());
«Il faut avoir déjà beaucoup appris de choses pour savoir demander ce qu'on ne sait pas.»
Jean-Jacques ROUSSEAU

Répondre à bissdebrazza

8

 gervais, le 11 mar 2009 à 02:33:01

Merci beaucoup,
C'est encore mieux comme ça

Répondre à gervais