السلام عليكم و رحمة الله و بركاته
لدي كود PHP بهذا الشكل استخدمه في استخراج عناصر القائمه مع العناصر الفرعيه و طباعتها باستخدام القالب Smarty
<?php
require_once ('includes/config.php');
require_once ('includes/libs/smarty/SmartyBC.class.php');
$SiteTemplate = new SmartyBC();
$SiteTemplate -> template_dir = "templates";
$SiteTemplate -> compile_dir = "templates/t_compile";
$sql = "select * from menu_items where sublevel = 0";
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result))
{
$menu[] = $row;
$SiteTemplate -> assign("menu",$menu);
$sql2 = "select * from menu_items where sublevel = 1 and parent_id = ".$row['id'];
$result2 = mysql_query($sql2);
while ($row2 = mysql_fetch_array($result2))
{
$menusub[] = $row2;
$SiteTemplate -> assign("menusub",$menusub);
}
}
$SiteTemplate -> display("index.tpl");
?>كود index.tpl
<ul>
{section name=menu loop=$menu}
<li>
<span>{$menu[menu].name}</span>
<ul>
{section name=menusub loop=$menusub}
<li><span>{$menusub[menusub].name}</span></li>
{/section}
</ul>
</li>
{/section}
</ul>استخدم هذا الكود علي اساس ان يخرج بهذا الشكل كمثال
<ul> <li> <span>Item-1</span> <ul> <li><span>Item-1-1</span></li> <li><span>Item-1-2</span></li> <li><span>Item-1-3</span></li> </ul> </li> <li> <span>Item-2</span> <ul> <li><span>Item-2-1</span></li> <li><span>Item-2-2</span></li> <li><span>Item-2-3</span></li> </ul> </li> <li> <span>Item-3</span> <ul> <li><span>Item-3-1</span></li> <li><span>Item-3-2</span></li> <li><span>Item-3-3</span></li> </ul> </li> </ul>
لكم عند استخدامه يخرج بهذا الشكل
<ul> <li> <span>Item-1</span> <ul> <li><span>Item-1-1</span></li> <li><span>Item-1-2</span></li> <li><span>Item-1-3</span></li> <li><span>Item-2-1</span></li> <li><span>Item-2-2</span></li> <li><span>Item-2-3</span></li> <li><span>Item-3-1</span></li> <li><span>Item-3-2</span></li> <li><span>Item-3-3</span></li> </ul> </li> <li> <span>Item-2</span> <ul> <li><span>Item-1-1</span></li> <li><span>Item-1-2</span></li> <li><span>Item-1-3</span></li> <li><span>Item-2-1</span></li> <li><span>Item-2-2</span></li> <li><span>Item-2-3</span></li> <li><span>Item-3-1</span></li> <li><span>Item-3-2</span></li> <li><span>Item-3-3</span></li> </ul> </li> <li> <span>Item-3</span> <ul> <li><span>Item-1-1</span></li> <li><span>Item-1-2</span></li> <li><span>Item-1-3</span></li> <li><span>Item-2-1</span></li> <li><span>Item-2-2</span></li> <li><span>Item-2-3</span></li> <li><span>Item-3-1</span></li> <li><span>Item-3-2</span></li> <li><span>Item-3-3</span></li> </ul> </li> </ul>
يقوم باستخراج جميع القوائم الفرعيه و تكرارها في كل مره
ارجو الحل حتي يخرج لكل قائمه رئيسيه قوائمها الفرعيه بهذا الشكل
<ul> <li> <span>Item-1</span> <ul> <li><span>Item-1-1</span></li> <li><span>Item-1-2</span></li> <li><span>Item-1-3</span></li> </ul> </li> <li> <span>Item-2</span> <ul> <li><span>Item-2-1</span></li> <li><span>Item-2-2</span></li> <li><span>Item-2-3</span></li> </ul> </li> <li> <span>Item-3</span> <ul> <li><span>Item-3-1</span></li> <li><span>Item-3-2</span></li> <li><span>Item-3-3</span></li> </ul> </li> </ul>
ارجو المساعده و شكرا