Здравствуйте! Подскажите пожалуйста, как сделать такой отчет, чтобы вывести общую таблицу из нескольких связанных таблиц? Например, у меня есть таблица #1 - главная таблица, и таблица #2 - подчиненная. Я хочу вывести данные таким образом, чтобы были отображены списком все записи из таблицы #1, и если у какой либо записи этой таблицы существуют подчиненные записи из таблицы номер 2, то записи подчиненной таблицы выводились бы под родительской записью тоже списком.
Таким образом хотелось бы научиться выводить данные с древовидной структурой и разным уровнем вложения.
Простые запросы умею делать, а в этом случае сообразить не получается.
Прошу вашей помощи!
Вывод древовидных данных
Автор dev77rus, 19 сент. 2013 22:02
В теме одно сообщение
#1
Отправлено 19 Сентябрь 2013 - 22:02
#2 Гость_Roman_*
Отправлено 23 Сентябрь 2013 - 08:17
Подготовка данных:
$result = data_select(1, "`status`=0");
while ($row = sql_fetch_assoc($result))
{
$data = $row;
$subres = data_select(2, "`status`=0 and `f111`=",$row['id']); // Поле `f111` - связь с таблицей 1.
while ($subrow = sql_fetch_assoc($subres))
$data['subres'][] = $subrow;
$lines[] = $data;
}
$smarty -> assign("lines", $lines);
Отображение:
<ul>
{foreach from=$lines item=data}
<li>{$data.id} - {$data.add_time}
<ul>
{foreach from=$data.subres item=subdata}
<li>{$subdata.id} - {$subdata.add_time}</li>
{/foreach}
</ul>
</li>
{/foreach}
</ul>
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных













