Erreur de syntaxe près de 'where

Résolu/Fermé
GYK Messages postés 142 Date d'inscription jeudi 2 janvier 2003 Statut Membre Dernière intervention 6 avril 2011 - 23 févr. 2007 à 14:39
 Antar - 15 janv. 2008 à 12:27
Bonjour,

Je me lance dans le php et j'ai l'erreur :
Échec de la requête : Erreur de syntaxe près de 'where Classe = $classe' à la ligne 1

Cette erreur se déclenche à la ligne suivante:

$recclas = mysql_query('select * from composition ORDER BY Classe where Classe = $classe');

Je vous joins le début du code:

<?php

$classe = "90-91 CM1";

$conn = mysql_connect('localhost', 'root', '');
if (!$conn) { die('Impossible de se connecter : ' . mysql_error());
}
mysql_select_db('ecole');

$recnbr = mysql_query('select * from eleves_par_classe ORDER BY Classe' );
if (!$recnbr) { die('Échec de la requête : ' . mysql_error());
}

$Nbr = $recnbr['Nbr'];

$ctr = 1;

$recclas = mysql_query('select * from composition ORDER BY Classe where Classe = $classe');

if (!$recclas) { die('Échec de la requête : ' . mysql_error());
}

etc

Quelqu'un peut'il m'aider.

Merci

8 réponses

Ssylvainsab Messages postés 2884 Date d'inscription samedi 29 juillet 2006 Statut Modérateur Dernière intervention 15 août 2020 825
23 févr. 2007 à 15:13
Ah, je vois ton problème :
1 - Tu mets le order by avant le where
2 - Tu utilise des guillemets pour fermer au lieu d'apostrophes.


C'est peut-être aussi parce que tu as les magic_quotes d'activées.
Essaye :
if(get_magic_quotes_gpc())
  $classe=stripslashes($classe);
$recclas=mysql_query('select * from composition where Classe=\''.$classe.'\' ORDER BY Classe '); 
0
Bonjour j'ai une page videos sur mon site mais voilà quand j'essaye d'y acceder j'ai ce message d'erreur :

Error: 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 id='46'' at line 1

46 c'est l'id d'une de mes videos.

Je pense que la requête c'est celle-ci :

$product_check_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "'");
$product_check = tep_db_fetch_array($product_check_query);

Si quelqun a une idée merci d'avance...
0
Ssylvainsab Messages postés 2884 Date d'inscription samedi 29 juillet 2006 Statut Modérateur Dernière intervention 15 août 2020 825
23 févr. 2007 à 14:42
Salut.

C'est juste que PHP n'interprète pas les variables entre guillemets, donc il faut faire :
'... =\''.$classe.'\''
-1
GYK Messages postés 142 Date d'inscription jeudi 2 janvier 2003 Statut Membre Dernière intervention 6 avril 2011 3
23 févr. 2007 à 14:48
Merci Ssylvainsab

OK, je vais essayer!
A+
-1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
GYK Messages postés 142 Date d'inscription jeudi 2 janvier 2003 Statut Membre Dernière intervention 6 avril 2011 3
23 févr. 2007 à 15:00
Probleme!
Voila la ligne telle que je l'ai corrigée:
$recclas = mysql_query('select * from composition ORDER BY Classe where Classe = \".$classe.'\");
et l'erreur que j'ai
Warning: Unexpected character in input: '\' (ASCII=92) state=1
J'ai un editeur syntaxique de couleur et le dernier slashe est de couleur différente?
A+
-1
GYK Messages postés 142 Date d'inscription jeudi 2 janvier 2003 Statut Membre Dernière intervention 6 avril 2011 3
23 févr. 2007 à 15:22
Trop fort
Merci

Maintenant c'est plus loin que ca coince, mais je vais voir.

Encore merci
-1
Ssylvainsab Messages postés 2884 Date d'inscription samedi 29 juillet 2006 Statut Modérateur Dernière intervention 15 août 2020 825
23 févr. 2007 à 15:25
De rien :-)

Fais un autre post si tu as un autre problème.

a plus
-1
GYK Messages postés 142 Date d'inscription jeudi 2 janvier 2003 Statut Membre Dernière intervention 6 avril 2011 3
23 févr. 2007 à 15:31
Y a des chances que ça arrive, mais faut que je cherche, y a que comme ça j'apprendrais.

Merci

A+
-1