ORDER BY после WHERE с escape-строкой в ​​SQL-запросе SELECT - PullRequest
0 голосов
/ 08 сентября 2011

У меня есть следующий запрос выбора, где мне нужно добавить ORDER BY topic_id DESC. Как я могу добавить его?

$sql = "SELECT  
    top_id,
    top_cat,
            COUNT(top_id) AS topic
FROM
    topics
WHERE
    top_cat = ". mysql_real_escape_string($_GET['id']);

Я не могу добавить ORDER BY прямо перед последней точкой с запятой (;), так как он получит ошибку и, конечно, его нельзя поместить прямо перед кавычками ("). Я также пытался поместить его перед WHERE, но снова , показывает ошибки позже, когда я ввожу if ($ row = mysql_fetch_assoc ($ result)).

Есть идеи?

1 Ответ

1 голос
/ 08 сентября 2011

Concat"order by topic_id desc" перед точкой с запятой, точно так же, как вы вводите идентификатор.Если это то, что вы делали, когда говорите: «Вы не можете поместить это прямо перед точкой с запятой», я не знаю, почему нет.

Проще диагностировать ошибки кода, если показать код, который создал ошибки.

...