Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы по PHP Выборка комментариев из заданной категории

Выборка комментариев из заданной категории


     22.11.2012    Общие вопросы по PHP, MySQL    2225

вопрос
Доброе утро.

Есть у меня запрос:

$query = "SELECT type,post_id,autor,text,date,email,ip FROM " . USERPREFIX . "_comments ORDER BY id DESC LIMIT 0,2";

с помощью которого создан вывод комментариев.

Подскажите пожалуйста, как модифицировать представленный запрос чтобы выбор комментариев происходил из указанной категории?

Ответил: Sander


$query = "SELECT c.type,c.post_id,c.autor,c.text,c.date,c.email,c.ip FROM " . USERPREFIX . "_comments c LEFT JOIN ".PREFIX."_post p ON c.post_id=p.id WHERE p.category=6 ORDER BY c.id DESC LIMIT 0,2";

Думаю не надо объяснять как и на что можно менять p.category=3
Отредактировал 22-11-2012, 19:20 - Sander
Причина: Исправил ответ

Комментарии пользователей (5)

BR0kEN
163

235 | 275

BR0kEN - 22 ноября 2012 18:17 - Эксперт

Спасибо большое. Sander, а подскажите пожалуйста что обозначают c. и p.?

BR0kEN
163

235 | 275

BR0kEN - 22 ноября 2012 19:07 - Эксперт

С префиксами, вроде бы, разобрался.

С этой частью мне все понятно:
SELECT c.type,c.post_id,c.autor,c.text,c.date,c.email,c.ip FROM " . USERPREFIX . "_comments c

А вот тут возникают вопросы:
LEFT JOIN ".PREFIX."_post p ON c.post_id=p.news_id WHERE p.category=3 ORDER BY id DESC LIMIT 0,2

news_id храниться в dle_post_extras и по-этому приведенный вами запрос не работает. Я пробовал менять, но что-то у меня не выходит.

Мой, нерабочий, вариант:
$query = "SELECT c.type,c.post_id,c.autor,c.text,c.date,c.email,c.ip FROM " . USERPREFIX . "_comments c LEFT JOIN " . USERPREFIX . "_post_extras e ON c.post_id=e.news_id LEFT JOIN " . USERPREFIX . "_post p WHERE p.category=6 ORDER BY id DESC LIMIT 0,2";

ПафНутиЙ
1064

3393 | 2433

ПафНутиЙ - 22 ноября 2012 19:12 - Админ

$query = "SELECT c.type,c.post_id,c.autor,c.text,c.date,c.email,c.ip FROM " . USERPREFIX . "_comments c LEFT JOIN ".PREFIX."_post p ON c.post_id=p.news_id WHERE p.category=3 ORDER BY c.date DESC LIMIT 0,2";

Каков вопрос - таков и ответ. Просто помните об этом.

Sander
1125

1637 | 1204

Sander - 22 ноября 2012 19:19 - Эксперт

Исправил ответ.
И мой запрос не работал не потому, что вы написали.

SanDev.pro - мой блог.

ICQ: 404-037-556
Skype: Sander8804

BR0kEN
163

235 | 275

BR0kEN - 22 ноября 2012 19:28 - Эксперт

Да, и правда так работает. Буду разбираться дальше. Премного благодарствую.

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

 29.08.2011 nowheremany  Общие вопросы по PHP