Smarty+ PHP. Вот такая вот задачка, ума не приложу.
function get_sub($id_gens,$begin=''){
$begin.="";
global $db,$smarty;
if ($article_sub_list = $db->query("SELECT article.*,users.login FROM ".DB_PREFIX."article article RIGHT JOIN ".DB_PREFIX."users users ON users.id = article.id_user WHERE id_gen='".$id_gens."' and level='1' ORDER BY doc_order ASC")) {
while ($article_sub_data= $db->fetch_array($article_sub_list))
{
$article_sub_data['sub']=$begin;
if ($popravok=$db->query("SELECT * FROM ".DB_PREFIX."article WHERE id_prav='".$article_sub_data['id']."' and level='2'"))$article_sub_data['popravok']=$db->num_rows($popravok);
$smarty->append("article_data",$article_sub_data);
get_sub($article_sub_data['id'],$begin);
}
}
}
$article_list = $db->query("SELECT article.*,users.login FROM ".DB_PREFIX."article article RIGHT JOIN ".DB_PREFIX."users users ON users.id = article.id_user WHERE article.id='".$id_article."'");
if ($article_list_data= $db->fetch_array($article_list))
{
$smarty->append("article_data",$article_list_data);
get_sub($article_list_data['id']);
$smarty->display("article/read_article.tpl");
}
Этим я получаю структуру, так сказать, а этим её вывожу:
<title>Чтение статей</title>
<center>Чтение документа "<{$article_data.0.name}>"
<{if $access<3}><a href="read.php?id_edit=<{$article_data.0.id}>">Изменить<a/> <{/if}> </center>
<table width="100%" border="1" cellpadding="5" style="border-collapse: collapse" bordercolor="#111111">
<tr>
<td width="50">Заголовок</td>
<td><{$article_data.0.subject}></td>
</tr>
<tr>
<td width="50">Вступление</td>
<td><{$article_data.0.up_text}></td>
</tr>
<{if $article_data.1.name}>
<tr>
<td width="50">Дочерние документы</td>
<td>
<table border =1 cellpadding="5">
<TR><td>
<{section name=article loop=$article_data start=1}>
.id}>"]<{$article_data[article].sub}><{$article_data[article].name}> <{$article_data[article].subject}>
Вступление:
<{$article_data[article].up_text}>
Заключение:
<{$article_data[article].down_text}>
<{/section}>
</td>
</tr>
</table>
</td>
</tr>
<{/if}>
<tr>
<td width="50">Заключение</td>
<td><{$article_data.0.down_text}></td>
</tr>
</table>
В итоге получается что-то вроде такого: http://fizot.narod.ru/read.htm
Где дерево примерно такое:
ФЕДЕРАЛЬНЫЙ ЗАКОН О государственном стандарте общего образования
Статья 2.
Статья 1.
1.
2.
3.
Но нужно, чтобы Заключение Статьи 1. располагалось под пунктами 1.2.3. ,но как это сделать я ума не приложу