簡體   English   中英

mysqli查詢問題

[英]issue with mysqli query

朋友,我被困住了,需要您的幫助!

當使用MySql制作動態菜單時,我使用查詢SELECT * FROM頁面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。親愛的朋友,如果您能幫助我,那將是一個很大的幫助,謝謝

$mysql沒有在函數范圍內定義。 您應該將其作為參數傳遞:

function Get_menu($mysql)

嘗試分析一下:

$query = 
"SELECT PageTitle, PageID, ParentID 
FROM 
  pages subs 
INNER JOIN 
  pages cats 
ON 
  subs.ParentID = cats.PageId 
GROUP BY PageID" ;

否則,如果您要按1提取類別,則數據庫將是pwn3d並處於壓力狀態。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM