ORDER BY après WHERE avec un escape_string dans un SQL SELECT
-
28-10-2019 - |
Question
J'ai la requête select suivante, où je dois ajouter une ORDER BY topic_id DESC. Comment puis-je ajouter?
$sql = "SELECT
top_id,
top_cat,
COUNT(top_id) AS topic
FROM
topics
WHERE
top_cat = ". mysql_real_escape_string($_GET['id']);
Je ne peux pas ajouter la clause ORDER BY juste avant le dernier point-virgule (;) car il recevra une erreur et, bien sûr, il ne peut pas être placé juste avant les guillemets ( ") J'ai aussi essayé de le placer avant WHERE mais encore une fois. , montre des erreurs plus tard, quand je vous présente si ($ row = mysql_fetch_assoc ($ result)).
Toutes les idées?
La solution
Concat "l'ordre par topic_id desc" avant le point-virgule, comme vous concat l'ID. Si c'est ce que vous faisiez quand vous dites « vous ne pouvez pas le placer juste avant le point-virgule » Je ne sais pas pourquoi.
Il est plus facile de diagnostiquer les erreurs de code si vous montrez le code qui a créé les erreurs.