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

Как получить все новости из категории?


     12.05.2015    Общие вопросы по PHP, MySQL    1114

вопрос
Здравствуйте. Необходимо из Базы данных вытащить все новости принадлежащие одной категории. Помогите решить проблему

$query_text = "SELECT * FROM ".PREFIX."_post where category='12'";
$res = $db->query($query_text);
while($row = $db->get_row($res)) {
$title1 = $row['title'];
}
echo $title1;


Пока ничего не выходит( Нужна ваша помощь!

Ответил: FastFud


{include file="engine/modules/test.php?cat=12&temp=myTemplate"}
Отредактировал 12-05-2015, 19:10 - Gameer
Причина: Поправил ответ, добавил код от FastFud с поправкой.

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

FastFud
50

1599 | 588

FastFud - 12 мая 2015 11:22 - Юзер

***Комментарий удален***

Dezma
6

Dezma - 12 мая 2015 12:00 - Юзер

Работает! Но не полностью. Если у нас к примеру идёт поиск по категории 12, то из БД берется новость, в которой 12 стоит первым числом.

То есть, если в поле категория в БД стоят категории в таком порядке: 12,887,929,283,13,519, то выводит. Если будет 887,929,12,283,13,519, то нет

Gameer
233

1149 | 398

Gameer - 12 мая 2015 13:06 - Юзер

Dezma, замени
$sql = $db->query("SELECT * FROM " . PREFIX . "_post WHERE category=$cat");
на
$sql = $db->query("SELECT * FROM " . PREFIX . "_post WHERE category LIKE '%$cat%'");

Dezma
6

Dezma - 12 мая 2015 14:21 - Юзер

Тут не все так гладко... Если у нас категория - 12, то используя эту структуру "category LIKE '%$cat%'" могут захвачены новости с категорий 112, 212, 123 и т.д... Надо чтоб только с конкретной брались

Gameer
233

1149 | 398

Gameer - 12 мая 2015 14:25 - Юзер

***Комментарий удален***

Dezma
6

Dezma - 12 мая 2015 14:33 - Юзер

category regexp '[[:<:]](12)[[:>:]]'

Этот подошёл вариант! Спасибо!

Gameer
233

1149 | 398

Gameer - 12 мая 2015 14:35 - Юзер

Dezma, потому что он используется для мультикатегорий, в общем, используйте на здоровье.

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

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