Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Вывод данных из двух связанных таблиц
|
|||
|---|---|---|---|
|
#18+
Доброго $времени_суток ! В общем есть две таблицы: 1. country - id (айди страны) - nameCountry (Название страны) 2. city - id (айди города) - nameCity (Название города) - idCountry (айди страны) Мне нужно вывести такой список из этих двух таблиц: Россия - Москва - Санкт-Петербург - Владивосток Украина - Киев - Одесса Для этого я использую запрос: Код: sql 1. Но при выводе через mysql_fetch_array() постоянно выводит название страны, когда оно должно вывестись один раз. Можно повставлять кучу условий в этот цикл, но хочется без них. Чтобы выбирало на каждый список городов - одну страну. Способен ли мускул на такое? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2013, 20:19 |
|
||
|
Вывод данных из двух связанных таблиц
|
|||
|---|---|---|---|
|
#18+
linnard, Пиши хранимую процедуру. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2013, 20:45 |
|
||
|
Вывод данных из двух связанных таблиц
|
|||
|---|---|---|---|
|
#18+
linnard, Хотя можно наверное и на клиенте. Запоминаешь имя страны. Если оно такое-же, как при предыдущем выводе - выводишь вместо него пробел. Если сменилось - выводишь имя и опять запоминаешь. Примерно так: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2013, 20:51 |
|
||
|
Вывод данных из двух связанных таблиц
|
|||
|---|---|---|---|
|
#18+
DarkMaster, Спасибо, этим способом я и пользуюсь... но эти if-ы в цикле меня смущают.. выходит что это единственный вариант? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2013, 21:16 |
|
||
|
Вывод данных из двух связанных таблиц
|
|||
|---|---|---|---|
|
#18+
авторвыходит что это единственный вариант? Код: php 1. Код: php 1. 2. 3. 4. +/- относительно твоего случая ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2013, 23:36 |
|
||
|
Вывод данных из двух связанных таблиц
|
|||
|---|---|---|---|
|
#18+
как-то так..., Спасибо, необычно. ща попробую ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2013, 01:08 |
|
||
|
Вывод данных из двух связанных таблиц
|
|||
|---|---|---|---|
|
#18+
linnard, Обычно делается вот так Код: php 1. 2. 3. 4. 5. разумеется будет получен массив массивов, а как еще иначе отобразить дерево? Код: php 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2013, 05:01 |
|
||
|
Вывод данных из двух связанных таблиц
|
|||
|---|---|---|---|
|
#18+
Возможно будет полезно объяснить. В php массивов нет, есть balanced tree, или по-реляционному nested set. С этим деревом мы и работаем когда создаем переменные, массивы и объекты. В примере выше происходит обычная группировка. Которую можно перенести и в запрос, что сделает его сугубым, то есть подходящим единственно в качестве зытычки. Когда мы пишем в $arr[$row['country_name']] еще один массив [] в который пишем $row['city_name'] или что там было, то, если в balanced tree _был_ такой элемент, с таким именем, например Россия, то он вернется нам как таковой, а если не было - такой элемент будет создан и вернется как таковой. Все просто. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2013, 05:08 |
|
||
|
Вывод данных из двух связанных таблиц
|
|||
|---|---|---|---|
|
#18+
Другими словами мы создаем переменную с именем Россия, то есть используем значение поля из бд как ключ поля для другого значения из бд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2013, 05:12 |
|
||
|
Вывод данных из двух связанных таблиц
|
|||
|---|---|---|---|
|
#18+
linnard, Запрос не рабочий вообще. Отношения по id-id не существует. Вот так должно быть: Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2013, 05:23 |
|
||
|
Вывод данных из двух связанных таблиц
|
|||
|---|---|---|---|
|
#18+
Кнопки редактировать тут не предвидится. Подумал что рендер ТС не осилит, а мне интересно для rowspan нарисовать, пока что приходилось только colspan. Скелет рендера иерархии глубиной 1 в таблицу. В левой колонке страна, в правой - ее города. Код: php 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2013, 06:01 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=38462868&tid=1463275]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
50ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 217ms |
| total: | 363ms |

| 0 / 0 |
