一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

一個更簡單的無限級分類菜單代碼

首先要感謝terry39的指點,元旦閑來無事,我就把他所講的原理簡單實現一下,這個程序的關鍵就在于數據表的設計很有特色,不用遞歸,依靠個簡單SQL語句就能列出菜單,看看這個數據表怎么設計的:
數據庫字段大概如下:
-----------------------------------------------------------------------------------
id              編號
fid             父分類編號
name         分類名
path          分類路徑,以 id 為節點,組成類似    ,1,2,3,4, 這樣的字符串
----------------------------------------------------------------------------------

可以假設有如下的數據

id      fid          name             path
----------------------------------------------------
1       0           分類1             ,1,
2       0           分類2             ,2,
3       1           分類1-1          ,1,3,
4       1           分類1-2          ,1,4,
5       2           分類2-1          ,2,5,
6       4           分類1-2-1       ,1,4,6,
----------------------------------------------------
這次偷懶,我只用一個頁面,好在代碼不長,全部代碼用類封裝的(不是必要,而是自己也想熟悉一下OO,呵呵!),來看看頁面代碼:
復制代碼 代碼如下:
<?php

/**************************************

  頁面:menu.php
  作者:輝老大
  功能:定義數據庫操作及生成菜單列表類

**************************************/
class menu{

       //創建構造函數,作用:數據庫連接并選擇相應數據庫
       public function __construct(){
           $dbhost     = "localhost";
           $dbuser     = "root";
           $dbpassword = "7529639";
           $dbname     = "menu";
           mysql_connect($dbhost,$dbuser,$dbpassword) or die("error!");
           mysql_query("SET NAMES 'GBK'");
           mysql_select_db($dbname);
       }

       //執行SQL語句函數
       private function query($sql){
           return mysql_query($sql);
       }

       //取得結果集數組函數
       private function loop_query($result){
           return mysql_fetch_array($result);
       }
       //列出菜單列表函數
       public function menulist(){
           $sql="select * from list order by path";
           $result=$this->query($sql);
            while($rows=$this->loop_query($result)){
             if(substr_count($rows['path'],',')>2){
               for($i=0;$i<(substr_count($rows['path'],',')-2);$i++)
               echo ' ';
              }
             echo $rows['name'].'<br>';
            }
       }

       //創建析構函數,作用:關閉數據庫連接
       public function __destruct(){
           return mysql_close();
       }
   }
  $db=new menu();//生成實例
  $db->menulist();//調用方法生成菜單
?> 

php技術一個更簡單的無限級分類菜單代碼,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产99热在线观看 | 成人污视频在线观看 | 日本一区午夜爱爱 | 热re66久久精品国产99re | 丁香婷婷成人 | 亚洲伦理中文字幕一区 | 国产成人精品视频频 | 国产愉拍精品手机 | 国产精品视频免费视频 | 国产免费播放一区二区三区 | sese天堂| 五月婷婷六月爱 | 自拍偷自拍亚洲精品被多人伦好爽 | 女人洗澡一级特黄毛片 | 综合激情区视频一区视频二区 | 在线精品国内视频秒播 | 国产片欧美片亚洲片久久综合 | 伊人精品网 | 日本人视频18jizz免费 | 成人两性视频 | 国产一级特黄一级毛片 | 欧美特黄特刺激a一级淫片 欧美特黄特色aaa大片免费看 | 在线观看国产精美视频 | 久久综合一区二区 | 色老板影视 | 亚洲福利在线观看 | 国产精品免费福利 | 免费人成网站尤物在线观看 | 日本亚洲精品 | 久久中文娱乐网 | 91天天干| 色交视频 | 日韩视频第一页 | 久久亚洲福利 | 44444色视频在线观看 | 国产欧美亚洲精品综合在线 | 高清成年美女黄网站色大 | 碰人超人人人超人人 | 高清在线亚洲精品国产二区 | 国产网站在线 | 国产久热香蕉在线观看 |