|
|
|
| Есть две таблицы типа...
categories
cat_id sub_id name
1 0 животные // раздел
2 0 растения // раздел
3 1 кошки // категория
4 1 собаки // категория
5 2 трава // категория
6 2 деревья // категория
|
и таблица page (статьи)
id cat title
1 4 собака друг человека
2 3 любовь детей к кошкам
3 5 полезная трава для вашей кошки
|
получается статья полезная трава для вашей кошки
может относиться и категории трава( 5 )и к категории кошки (3 )
Trianon вопрос к Вам ,подскажите ,как грамотно это сделать ,нужна ли таблица связей и какую сделать ее структуру и надо ли менять структуру таблиц page и categories | |
|
|
|
|
|
|
|
для: serjinio
(12.10.2008 в 00:54)
| |
d cat title
1 4 собака друг человека
2 3 любовь детей к кошкам
3 5 полезная трава для вашей кошки
4 5 банан - самая высокая трава
5 5 уход за газонами
|
если page.cat содержит значения ключей из categories.cat_id , то у Вас уже всё сделано.
Собственно это и называется связью 1:N . Несколько разных страниц относятся к одной и той же категории. | |
|
|
|
|
|
|
|
для: Trianon
(12.10.2008 в 10:07)
| | Я ,честно говоря запутался...
Допустим,я выбираю // раздел -- животные sub_id=1
выводится статьи........
любовь детей к кошкам // категория -- кошки
собака друг человека // категория --собаки
выбираю // категория -- кошки
выводится статьи........
любовь детей к кошкам
выбираю // раздел -- растения sub_id=2
выводится статьи........
полезная трава для вашей кошки // категория --трава (т.к статья только одна в данной категории....)
выбираю // категория -- трава
выводится статьи........
полезная трава для вашей кошки
а хотелось бы сделать что при выборе категории кошки выводить статьи....
любовь детей к кошкам // категория -- кошки
полезная трава для вашей кошки // категория -- трава
|
Не могу понять как сделать ,либо ставить где-то метки что статья
b]полезная трава для вашей кошки [/b] // категория -- трава[/code]
относится и к категории кошки и к категории трава или как-то подругому это реализовывается...не пойму алгоритма ... | |
|
|
|
|
|
|
|
для: serjinio
(12.10.2008 в 12:27)
| | Если у Вас потенциально любая из нескольких статей может относиться не к одной, а к нескольким категориям, как Вы хотите сделать со статьей "полезная трава для вашей кошки", то это уже отношение не "один ко многим" , а "многие ко многим". И для него (вместо столбца page.cat ) действительно потребуется дополнительная таблица link(id_page, id_cat). | |
|
|
|
|
|
|
|
для: Trianon
(12.10.2008 в 12:33)
| | Т.е мне надо удалить столбец cat в таблице page (статьи)
и создать дополнительную таблицу связей link(id_page, id_cat),
а как в таком случае производить выборку статей по разделам и категориям??? | |
|
|
|
|
|
|
|
для: serjinio
(12.10.2008 в 12:46)
| | не в этой теме. | |
|
|
|
|
|
|
|
для: Trianon
(12.10.2008 в 12:48)
| | Поэкспериментировал и оставил эту затею,слишком много требуется менять в проекте,буду делать таим образом в новом...
Trianon огромное спасибо за помощь. | |
|
|
|