11 réponses
Le commentaire suivant : // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
n'est pas adapté a la situation car j'ai repris le systeme de pagination de mon livre d'or en en changeant que les donnez et non les commentaires
n'est pas adapté a la situation car j'ai repris le systeme de pagination de mon livre d'or en en changeant que les donnez et non les commentaires
Bonjour
En Mysql, les textes (non nombres) qui ne sont pas entourés de ' ni de " sont pris pour des noms de colonne. C'est d'ailleurs ce que tu fais pour maj, pourquoi ce serait différent pour D ?
Un texte doit être entouré de " ou de '.
Tu as besoin de WHERE maj = 'D'
J'ai essayé plusieur autre méthode comme avec LIKE , ou $D , '.$D.' mais ca ne marche toujours pas. Je te conseille une autre méthode : réfléchir au message d'erreur affiché. S'il te dit quil ne connaît pas la colonne D, c'est qu'il prend D pour une colonne. Quelles sont les règles d'écriture d'un nom de colonne ? voir manuel mysql
Quand au $D, il est franchement irrationnel.
En Mysql, les textes (non nombres) qui ne sont pas entourés de ' ni de " sont pris pour des noms de colonne. C'est d'ailleurs ce que tu fais pour maj, pourquoi ce serait différent pour D ?
Un texte doit être entouré de " ou de '.
Tu as besoin de WHERE maj = 'D'
J'ai essayé plusieur autre méthode comme avec LIKE , ou $D , '.$D.' mais ca ne marche toujours pas. Je te conseille une autre méthode : réfléchir au message d'erreur affiché. S'il te dit quil ne connaît pas la colonne D, c'est qu'il prend D pour une colonne. Quelles sont les règles d'écriture d'un nom de colonne ? voir manuel mysql
Quand au $D, il est franchement irrationnel.
Justement ' et " je les ai essayé mais ca prend toujours ca comme une colonne.
De plus, j'ai réfléchi par rapport au faite que D ( pour cet exemple ) été une colonne, mais je ne peux pas me permettre de créé une colonne pour chaque lettre. Ca me prendrais trop de temps pour l'utiliser par la suite.
De plus, j'ai réfléchi par rapport au faite que D ( pour cet exemple ) été une colonne, mais je ne peux pas me permettre de créé une colonne pour chaque lettre. Ca me prendrais trop de temps pour l'utiliser par la suite.
Rectification avec D entouré de ' ou de " , le message d'erreur est le suivant :
Parse error: syntax error, unexpected T_STRING in /mnt/102/sda/4/8/newseries/d.php on line 116
Ma ligne 116 est celle ci :
$reponse = mysql_query('SELECT * FROM fiche_series WHERE maj = D ORDER BY titre LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage) or die(mysql_error());
Parse error: syntax error, unexpected T_STRING in /mnt/102/sda/4/8/newseries/d.php on line 116
Ma ligne 116 est celle ci :
$reponse = mysql_query('SELECT * FROM fiche_series WHERE maj = D ORDER BY titre LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage) or die(mysql_error());
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Justement ' et " je les ai essayé mais ca prend toujours ca comme une colonne
Non, ça n'est pas vrai. Tu écris ça sans avoir fait une vérification sérieuse.
On n'a pas à 'essayer' les ' et les ", il faut mettre le bon. Si tu confonds programmation et Loto, tu n'iras pas loin.
C'est vrai que le WHERE maj = 'D' tel que je te l'ai donné ne marche pas (je ne l'ai pas fait exprès). Si tu l'as essayé, le message d'erreur n'a sûrement pas été qu'il ne connaissait pas la colonne D.
'SELECT * FROM fiche_series WHERE maj = 'D' ORDER BY titre LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage
Tu vois que dans cette requête, la chaîne (qui commence par une apostrophe) se termine avec l'apostrophe suivante, donc après le =. Ensuite, il y a un D qui 'débarque' comme ça : ça n'est pas une variable, pas une fonction etc... juste une erreur de syntaxe.
Par contre, si tu utilises des " autour du D, la chaîne va bien jusqu'au LIMIT. Ensuite, il y a un point qui veut dire que la suite fait partie de la même chaine etc. Là c'est correct.
Si tu as essayé avec "D" ça a dû marcher. Il est possible qu'il reste une erreur (je n'en vois pas mais...). ça n'est sûrement pas une erreur de colonne D inconnue
Non, ça n'est pas vrai. Tu écris ça sans avoir fait une vérification sérieuse.
On n'a pas à 'essayer' les ' et les ", il faut mettre le bon. Si tu confonds programmation et Loto, tu n'iras pas loin.
C'est vrai que le WHERE maj = 'D' tel que je te l'ai donné ne marche pas (je ne l'ai pas fait exprès). Si tu l'as essayé, le message d'erreur n'a sûrement pas été qu'il ne connaissait pas la colonne D.
'SELECT * FROM fiche_series WHERE maj = 'D' ORDER BY titre LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage
Tu vois que dans cette requête, la chaîne (qui commence par une apostrophe) se termine avec l'apostrophe suivante, donc après le =. Ensuite, il y a un D qui 'débarque' comme ça : ça n'est pas une variable, pas une fonction etc... juste une erreur de syntaxe.
Par contre, si tu utilises des " autour du D, la chaîne va bien jusqu'au LIMIT. Ensuite, il y a un point qui veut dire que la suite fait partie de la même chaine etc. Là c'est correct.
Si tu as essayé avec "D" ça a dû marcher. Il est possible qu'il reste une erreur (je n'en vois pas mais...). ça n'est sûrement pas une erreur de colonne D inconnue
J'ai mis longtemps à écrire le message précédent, il s'est croisé avec le tien.
Tu n'as pas essayé avec ". En tous cas, tu n'as pas la même erreur
Tu n'as pas essayé avec ". En tous cas, tu n'as pas la même erreur
Merci Toto !
Tu avais raison il fallait les guillemet autour du D et vérifié le bon enchainement de l'opération !
Encore merci !
Tu avais raison il fallait les guillemet autour du D et vérifié le bon enchainement de l'opération !
Encore merci !
briiiiix
Messages postés
575
Date d'inscription
vendredi 24 octobre 2008
Statut
Membre
Dernière intervention
1 juin 2010
18
27 oct. 2008 à 09:54
27 oct. 2008 à 09:54
$reponse = mysql_query(" SELECT * FROM `fiche_series` WHERE `maj` = 'D' ORDER BY `titre` LIMIT '$premierMessageAafficher' , '$nombreDeMessagesParPage' ") or die(mysql_error());
ça me semble plus correct, car si la requete est entoutée de ", php va remplacer automatiquement les variables par leurs valeur et comme ça la regle devien simple, les champs sont entourés de `` (AltGr + 7 en clavier français) et les valeur et variables sont entourées par des quotes ' '.
Essaies ça doit marcher
ça me semble plus correct, car si la requete est entoutée de ", php va remplacer automatiquement les variables par leurs valeur et comme ça la regle devien simple, les champs sont entourés de `` (AltGr + 7 en clavier français) et les valeur et variables sont entourées par des quotes ' '.
Essaies ça doit marcher
briiiiix
Messages postés
575
Date d'inscription
vendredi 24 octobre 2008
Statut
Membre
Dernière intervention
1 juin 2010
18
27 oct. 2008 à 13:43
27 oct. 2008 à 13:43
N'oublie pas de mettre cette discussion en résolu si c'est le cas