Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы по PHP » Выборка комментариев из заданной категории

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


     22.11.2012    sql, запрос, php    Общие вопросы по PHP, MySQL    3899

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

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

$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
Эксперт

BR0kEN - 22 ноября 2012 18:17 -

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

BR0kEN
Эксперт

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";

ПафНутиЙ
Админ

ПафНутиЙ - 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
PHP-developer

Sander - 22 ноября 2012 19:19 -

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

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

Telegram: @sandev
Skype: Sander8804

BR0kEN
Эксперт

BR0kEN - 22 ноября 2012 19:28 -

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

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

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

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