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

Форум MySQL

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

 

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

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

тема: связная таблица
 
 автор: liberty   (06.07.2013 в 04:38)   письмо автору
 
 

здравствуйте.
у вуза есть филиалы.
как связать есть филиалы с головным вузом.
какая структура таблицы.

сейчас я прописываю в ручную ссылки с филиала на головной вуз, а этого вуза на филиалы.
пришло время облегчить себе задачу.
только вот так создать эту таблицу? какие поля должны быть?

  Ответить  
 
 автор: Sfinks   (06.07.2013 в 08:35)   письмо автору
 
   для: liberty   (06.07.2013 в 04:38)
 

Два целочисленных поля. ИД вуза и ИД филиала.

  Ответить  
 
 автор: liberty   (06.07.2013 в 19:13)   письмо автору
 
   для: Sfinks   (06.07.2013 в 08:35)
 

все вузы имееют id_university

и как тут быть?

создать 2 одинаковых поля?

  Ответить  
 
 автор: Sfinks   (06.07.2013 в 19:24)   письмо автору
 
   для: liberty   (06.07.2013 в 19:13)
 

Эхххх.....

Есть таблица университетов:
id | name  | adress
-------------------
1  | МАИ   | .....
2  | ГИТИС | .....

Есть таблица филиалов:
id | name            | adress
-----------------------------
1  | МАИ в Воронеже  | .....
2  | МАИ в Иркутске  | .....
3  | ГИТИС в Самаре  | .....
4  | ГИТИС в Тамбове | .....

Создаете таблицу связей:
id_vuz | id_fil
---------------
1      | 1
1      | 2
2      | 3
2      | 4

Какие одинаковые поля??????????????????????????????????????????????????????????????

  Ответить  
 
 автор: liberty   (06.07.2013 в 19:36)   письмо автору
 
   для: Sfinks   (06.07.2013 в 19:24)
 

эххх...

филиалы и головные вузы все расположены в одной таблице с id_university

чем крыть теперь будете? )))

  Ответить  
 
 автор: Sfinks   (06.07.2013 в 20:41)   письмо автору
 
   для: liberty   (06.07.2013 в 19:36)
 

Матом.
Надо сразу говорить.
Вообще не буду больше отвечать, без информации о структуре таблицы и формате данных.

Добавьте 1 поле - main_vuz_id.
Для филиалов прописывайте в этом поле id головного вуза, у головного пишите 0.
Проще некуда.

P.S. Даже не знаю, чему вы радуетесь.... Это же элементарно.

  Ответить  
 
 автор: liberty   (06.07.2013 в 21:11)   письмо автору
 
   для: Sfinks   (06.07.2013 в 20:41)
 

теперь все ясно.
благодарю, сэр!

  Ответить  
 
 автор: liberty   (06.07.2013 в 21:48)   письмо автору
 
   для: liberty   (06.07.2013 в 21:11)
 

это я реализовал.
все работатет.

но как сделать обратную ссылку с головного вуза на филиалы?
у филиалы есть 2 айди
id_university и main_vuz_id (ссылка на головной вуз).

повторяю все работает.

у головного вуза есть тоже 2 айди
id_university и main_vuz_id (только оно пустое)

вводить еще одно поле? filial_vuz_id?

только этих филиалов может быть и 5, 10 штук.

  Ответить  
 
 автор: liberty   (06.07.2013 в 23:55)   письмо автору
 
   для: liberty   (06.07.2013 в 21:48)
 

сделал! ух ты . сам )))
    
 <?php 
        
// выбор головного вуза
    
$main_vuz_id $myrow3[main_vuz_id];
    
$result_data mysql_query("SELECT * from univ WHERE id_university='" mysql_real_escape_string($main_vuz_id) . "'"$db);
 
?>

    
 <?php 
    
// выбор филиала
        
$main_vuz_id $myrow3[id_university];
    
$result_data mysql_query("SELECT * from univ WHERE main_vuz_id='" mysql_real_escape_string($main_vuz_id) . "'"$db);
 
?>

  Ответить  
 
 автор: Sfinks   (08.07.2013 в 12:50)   письмо автору
 
   для: liberty   (06.07.2013 в 23:55)
 

У вас ID - целые числа, я надеюсь?
В этом случае, не нужно задавать лишнюю работу ни для MySQL, передавая их как строки в кавычках, ни для PHP, обрабатывая mysql_real_escape_string().
Целое? Вот и работайте с ним как с целым:
<?php 
    $main_vuz_id 
intval$myrow3[main_vuz_id] ); 
    
$result_data mysql_query("SELECT * from univ WHERE id_university = ".$main_vuz_id$db);

Аналогично и с филиалом.

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

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