以下のようなメニューの表があります (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();
しかし、結果として、すべてのメニュー項目に追加のサブメニュー項目が表示されます。
コードを修正するにはどうすればよいですか?