Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Отношение один ко многим....
 
 автор: serjinio   (12.10.2008 в 00:54)   письмо автору
 
 

Есть две таблицы типа...
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

  Ответить  
 
 автор: Trianon   (12.10.2008 в 10:07)   письмо автору
 
   для: 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 . Несколько разных страниц относятся к одной и той же категории.

  Ответить  
 
 автор: serjinio   (12.10.2008 в 12:27)   письмо автору
 
   для: Trianon   (12.10.2008 в 10:07)
 

Я ,честно говоря запутался...
Допустим,я выбираю // раздел -- животные sub_id=1
выводится статьи........
любовь детей к кошкам // категория -- кошки
собака друг человека // категория --собаки

выбираю // категория -- кошки
выводится статьи........
любовь детей к кошкам

выбираю // раздел -- растения sub_id=2
выводится статьи........
полезная трава для вашей кошки // категория --трава (т.к статья только одна в данной категории....)

выбираю // категория -- трава
выводится статьи........
полезная трава для вашей кошки

а хотелось бы сделать что при выборе категории кошки выводить статьи....
любовь детей к кошкам                   // категория -- кошки
полезная трава для вашей кошки          // категория -- трава


Не могу понять как сделать ,либо ставить где-то метки что статья
b]полезная трава для вашей кошки [/b] // категория -- трава[/code]
относится и к категории кошки и к категории трава или как-то подругому это реализовывается...не пойму алгоритма ...

  Ответить  
 
 автор: Trianon   (12.10.2008 в 12:33)   письмо автору
 
   для: serjinio   (12.10.2008 в 12:27)
 

Если у Вас потенциально любая из нескольких статей может относиться не к одной, а к нескольким категориям, как Вы хотите сделать со статьей "полезная трава для вашей кошки", то это уже отношение не "один ко многим" , а "многие ко многим". И для него (вместо столбца page.cat ) действительно потребуется дополнительная таблица link(id_page, id_cat).

  Ответить  
 
 автор: serjinio   (12.10.2008 в 12:46)   письмо автору
 
   для: Trianon   (12.10.2008 в 12:33)
 

Т.е мне надо удалить столбец cat в таблице page (статьи)
и создать дополнительную таблицу связей link(id_page, id_cat),
а как в таком случае производить выборку статей по разделам и категориям???

  Ответить  
 
 автор: Trianon   (12.10.2008 в 12:48)   письмо автору
 
   для: serjinio   (12.10.2008 в 12:46)
 

не в этой теме.

  Ответить  
 
 автор: serjinio   (13.10.2008 в 11:02)   письмо автору
 
   для: Trianon   (12.10.2008 в 12:48)
 

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

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования