Связанные поля в таблице sql и вывод в php

Статус
В этой теме нельзя размещать новые ответы.

rasandrey

Участник
Регистрация
2 Апр 2009
Сообщения
214
Реакции
6
Подскажите, пожалуйста, как лучше всего решить такую задачу:
есть 2 таблицы, назовем их oblast и towns. Таблица oblast содержит такие поля: id_oblast и name_oblast(областя). Таблица towns содержит такие поля: id_town, id_oblast и name_town.(города). Как можно связать эти таблицы по полю id_oblast?

При запросе
Код:
SELECT * FROM towns
я хочу получить в php массив, который будет иметь такой формат:

PHP:
$towns = array('id_oblast' => array(
id_town => 'name_town',
))
 
Самый простой способ + id_oblast должены быть индексированы
Код:
SELECT * 
FROM oblast o, towns t
WHERE
o.id_oblast = t.id_oblast

Довольно странная структура массива, ты уверен в ней?
 
не уверен, поэтому и прошу совета. В идеале мне нужно сделать 2 зависимых select "Областей и городов", вот пытаюсь это сделать, может есть какой-то другой вариант?
 
PHP:
$result = mysql_query("SELECT * FROM town");
  if (mysql_num_rows($result) > 0) {
    while($row = mysql_fetch_array($result)) {
       $town[$row['id_oblast']][$row['id_town']] = $row['town_name'];
    }
  }
 
не уверен, поэтому и прошу совета. В идеале мне нужно сделать 2 зависимых select "Областей и городов", вот пытаюсь это сделать, может есть какой-то другой вариант?
Проще вывести список областей, а после выбора аяксом заполнить второй селект данными о городах выбранной области.
 
Ищите "Связанные списки"
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху