You have an error in your SQL syntax - Erreur dans ma requete
cs_christuckers
Messages postés75Date d'inscriptionjeudi 27 juillet 2006StatutMembreDernière intervention26 mars 2010
-
25 mars 2010 à 15:23
Arto_8000
Messages postés1044Date d'inscriptionlundi 7 mars 2005StatutMembreDernière intervention13 juillet 2010
-
26 mars 2010 à 16:58
Bonjour a tous ceux qui me liront aujourd'hui.
Je fais appel à vos services car je rencontre une erreur qui me prend la tête depuis une semaine...
Voici ma requete :
<? $query "SELECT fgscmontant, fgcid, fgscid, prpid FROM fg_souscategorie WHERE fgcid $fgcid AND fgscid = $fgscid AND prpid = 1 ";
$result = mysql_query($query) or die ('Erreur SQL !
'.$sql.'
'.mysql_error());
$nb_result = mysql_num_rows($result);
while($row = mysql_fetch_array($result))
{ $fgscid= $row['fgscid'];
$fgscmontant= $row['fgscmontant'];
// c'est ibi que ça se passe :
?> <?=$fgscmontant?> <? } ?>
Voici le message qui s'affiche dans ma page :
Erreur SQL !
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 'AND fgscid 5 AND prpid 1' at line 1
Dedans, je comprends qu'il reçoit bien la valeur de certaine variable (fgscid et prpid) mais je ne comprends pas pourquoi il s'obstine et m'affiche ce message. Ai-je fais une erreur dans ma requête ? (ma base se trouve sur un serveur OVH 90 Plan...)
Merci beaucoup à tous ceux qui liront ceci, et merci enormement à ceux qui m'aideront.
Arto_8000
Messages postés1044Date d'inscriptionlundi 7 mars 2005StatutMembreDernière intervention13 juillet 20107 25 mars 2010 à 20:00
Disons que tout d'abord mettre les paramètres directement dans la requête sans filtrage n'est vraiment pas la bonne chose à faire.
Tu devrais utiliser mysql_real_escape_string pour t'assurer que tes valeurs ne vienne pas bousiller ta requête SQL. Dans ton cas, il y a probablement un caractère non désirable dans ta variable $fgcid qui s'est glissé.
cs_christuckers
Messages postés75Date d'inscriptionjeudi 27 juillet 2006StatutMembreDernière intervention26 mars 2010 26 mars 2010 à 10:48
Ok, merci beaucoup je n'ai plus ce message d'erreur...
En revanche, peux tu m'expliquer les "/", c'est la premiere fois que je voix ca. Et aussi, est-ce normal que ma variable fgscmontant ne s'affiche pas...
Sinon, voici mon tableau en entier :
Charges externes,
J,
F,
M,
A,
M,
J,
J,
A,
S,
O,
N,
D,
----
Fournitures consommables,
,
,
,
,
,
,
,
,
,
,
,
,
----
<? $query = \"SELECT * FROM fg_souscategorie ORDER by fgscid DESC\";
$result = mysql_query($query) or die (\"Lecture des demandes impossible
Arto_8000
Messages postés1044Date d'inscriptionlundi 7 mars 2005StatutMembreDernière intervention13 juillet 20107 26 mars 2010 à 16:58
Tu ne fais même pas la requête pour aller chercher la valeur de ton $fgscmontant ... tout ce que tu fais c'est construire la requête sans l'exécuter. Il te manque un mysql_query avec un parcours des résultats.