在动态菜单中回显JOIN查询PHP

时间:2018-08-11 09:19:22

标签: php mysql sql phpmyadmin

我在测试数据库中有两个表: 信息(ID,菜单,位置,可见) 页面(id,information_id,菜单,位置,可见内容)

我尝试使用它进行相关导航,例如:

  
      
  • 公共(id = 1的内部表信息)

         
        
    • 主页(information_id = 1的表内页)
    •   
    • 关于我们(内页页面的information_id = 1)
    •   
    • 工作(information_id = 1的表内页)
    •   
  •   
  • cms(id = 2的内部表信息)

         
        
    • 文章(information_id = 2的表格内页)
    •   
    • 添加用户(information_id = 2的表内页)
    •   
  •   

当我在PHPMyadmin中查询表时,会得到所需的结果,但是当我尝试在PHP中回显结果时,却没有得到带有子项目的结构化菜单。

<?php

$info_set = $db->prepare("SELECT *
                          FROM ccms.information");
$info_set->execute();

while ($information = $info_set->fetch(PDO::FETCH_ASSOC)) {
    echo "<li>" . $information["menu"] . "</li>";

    $page_set = $db->prepare("SELECT i.*,p.*  
                              FROM information i 
                              JOIN pages p 
                              ON i.id = p.information_id");

    $page_set->execute();
    echo "<ul>";

    while ($pages = $page_set->fetch(PDO::FETCH_ASSOC)) {
        echo "<li>" . $pages["menu"] . "</li>";
    }
    echo "</ul>";
}
?>

结果是信息表中的菜单项可以很好地回显,但子项却没有。 我在这里想念什么?

我很抱歉让我的问题过于简单,我是PHP&SQL的新手。

0 个答案:

没有答案