友達私は立ち往生していて、あなたの助けが必要です!
MySqlを使用して動的メニューを作成する場合は、クエリSELECT * FROM pages WHERE ParentID = 0を使用し、サブメニューの場合はWHERE ParentID ='$ PageID' ...ただし、MySqliを使用する場合、このアプローチは機能しないようです。私が見る理由は、クエリは関数の外で書かれるべきであるということです。なぜなら、関数内では単純に機能しないからです。理由がわかりません。とにかくここに私のコードがあります、そして私はあなたの友人が問題を解決するのを手伝ってくれることを願っています
function Get_menu() {
$menuQuery = $mysql->query("SELECT PageTitle, PageID, ParentID FROM pages WHERE ParentID = 0");
while (($row = $menuQuery->fetch_assoc()) !== null) {
echo '<li class="menu-item"><a href="page.php?pageID=' . $row["PageID"] . '">' . $row["PageTitle"] . '</a>';
$PageID = $row["PageID"];
$SubmenuQuery = $mysql->query("SELECT PageTitle, PageID, ParentID FROM pages WHERE ParentID = '$PageID'");
if($SubmenuQuery->num_rows > 0) {
echo '<ul class="sub-menu">';
while (($rowx = $SubmenuQuery->fetch_assoc()) !== null) {
echo '<li class="menu-item"><a href="page.php?pageID=' . $rowx["PageID"] . '">' . $rowx["PageTitle"] . '</a></li>';
}
echo '</ul>';
}
echo '</li>';
}
}
関数の外でクエリを書いてみましたが、$ PageIDが0であると想定しているため、サブメニューのクエリが機能しません。