несколько категорий у новости и выбор новостей из 1 категори

Темы, не касающиеся фреймворка, но относящиеся к программированию в целом.
Ответить
Аватара пользователя
rem
Сообщения: 56
Зарегистрирован: 2011.11.22, 16:08

несколько категорий у новости и выбор новостей из 1 категори

Сообщение rem »

объясню подробнее.
есть таблица с категориями (айди, название). есть таблица с записями, в каждой записи можно указывать несколько категорий (например, id:1, title:aaa, category:1,2,3).
теперь проблемка. не могу понять как сделать выборку новостей из определенной категории. допустим категория с названием ННН, в ней нужно вывести все новости у которых указан айди этой категории. как сделать эту самую выборку в таблице из поля category, в котором несколько значений?
Johnatan
Сообщения: 167
Зарегистрирован: 2010.10.27, 13:06
Откуда: Reino de España

Re: несколько категорий у новости и выбор новостей из 1 кате

Сообщение Johnatan »

Почитайте:
http://ru.wikipedia.org/wiki/%D0%9D%D0% ... 0%BC%D0%B0
При чём обязательно прочитайте и ПОЙМИТЕ все 6 нормальных форм и две дополнительные формы. Без этого у вас не получится реализовывать сколько-нибудь сложные проекты с базами данных.

После этого читайте:
http://www.yiiframework.com/doc/guide/1 ... tabase.arr
Если после прочтения будут вопросы - пишите.
Конференция: yii@conference.jabber.ru
Аватара пользователя
rem
Сообщения: 56
Зарегистрирован: 2011.11.22, 16:08

Re: несколько категорий у новости и выбор новостей из 1 кате

Сообщение rem »

Спасибо за статью.
Я так понял что правильней будет сделать еще одну таблицу, в которой будут храниться айди статьи и айди категории для этой статьи?
Тогда встает вопрос как обновлять эти данные? Допустим сначала ввели

Код: Выделить всё

article_id   category_id
1               1
1               2
1               3
Потом вдруг потребовалось у этой статьи изменить айди категории на 4, 5, 6, 7, 8.
Просто удалить все записи из БД с айди этой статьи и заново добавить только с новыми айди категории будет правильно?
esche
Сообщения: 1054
Зарегистрирован: 2010.11.24, 03:39

Re: несколько категорий у новости и выбор новостей из 1 кате

Сообщение esche »

rem писал(а):Просто удалить все записи из БД с айди этой статьи и заново добавить только с новыми айди категории будет правильно?
* из промежуточной таблицы. Можно удалять не все, а только WHERE category_id NOT IN (4,5,6,7)
p.s. Посмотрите пример демо-блога - там решение (Post - Tag) ближе к Вашему первому варианту.
...
Аватара пользователя
rem
Сообщения: 56
Зарегистрирован: 2011.11.22, 16:08

Re: несколько категорий у новости и выбор новостей из 1 кате

Сообщение rem »

Всем спасибо, теперь разобрался
asisdes
Сообщения: 202
Зарегистрирован: 2013.10.03, 15:54

Re: несколько категорий у новости и выбор новостей из 1 кате

Сообщение asisdes »

Чувак здорова!
Код рабочий есть реализации категорий?
так же столкнулся с такой проблемой.
Изображение
kabiden-azamat
Сообщения: 1
Зарегистрирован: 2014.04.06, 19:54

Re: несколько категорий у новости и выбор новостей из 1 кате

Сообщение kabiden-azamat »

$mysqli = new mysqli("localhost", "root", "", "cat"); // Подключение к БД
$cat = $_GET['cat']; // Получаем id категории которую будем искать
$result_set = $mysqli->query("SELECT * FROM `news`"); // Выводим все новости
while($id = $result_set->fetch_assoc()) {
$pieces = explode(",", $id['cat']); // Разделяем id через запятую
for($i=0; $i<count($pieces); $i++) {
if($pieces[$i] == $cat) { // Проверяем если присутствует ли в новости заданные ранее id
echo $id['title']."<br />"; // выводим найденную новость
}
}

}

Я редко с этим сталкивался но вот решил попробовать вроде как получилось, правда не рассчитал то что если найдет много новостей разбить все по страницам, но прилажил файл где все доработал кто разбирается хоть немного в php думаю поймет
Вложения
index.rar
(856 байт) 169 скачиваний
Ответить