我有一個表像下面的菜單(見HTML部分):循環嵌套菜單
我想將數據轉換爲一個循環嵌套菜單。我想這是這樣的:
此將其作爲HTML:
<ul>
<?php echo $renderProductMenuItemLv1; ?>
</ul>
及相關PHP代碼:
if($result = $mysqli->query("SELECT * FROM myTable WHERE type='Business_Line_Product_Level_1' AND parent='37' ORDER BY order_id ASC"))
{
while($row = $result->fetch_array())
{
$productLv1Title = $row["title"];
$productLv1Body = $row["body"];
$productLv1OriId = $row["id"];
if($result2 = $mysqli->query("SELECT * FROM page WHERE type='Business_Line_Product_Level_2' AND parent='$productLv1OriId' ORDER BY order_id ASC"))
{
while($row = $result2->fetch_array())
{
$productLv2Title = $row["title"];
$productLv2Body = $row["body"];
$productLv2OriId = $row["id"];
$renderProductMenuItemLv2 .= '
<li>
<a href="businessLineProductLv2.php?p='. $productLv2Id .'">
'. $productLv2Title .'
</a>
</li>
';
} // eof while row
} // eof if result
$renderProductMenuItemLv1 .= '
<li>
<a href="businessLineProductLv1.php?p='. $productLv1Id .'">
'. $productLv1Title .'
</a>
<ul>
'. $renderProductMenuItemLv2 .'
</ul>
</li>
';
} // eof while row
} // eof if result
$result->free_result();
但結果是我得到的每個菜單項上的附加子菜單項。
我該如何修復我的代碼?
您能提供意想不到的結果嗎? – ghbarratt 2012-08-11 05:31:29
感謝您的編輯和回覆。結果是:http://jsfiddle.net/MeEax/。每個菜單項的子菜單項數量不斷增加 – Bayu 2012-08-11 05:40:07