用户
 找回密码
 入住 CI 中国社区
搜索
12
返回列表 发新帖
楼主: blcygzs
收起左侧

如何读取三级栏目数据?

[复制链接]
发表于 2012-5-24 09:16:31 | 显示全部楼层
blcygzs 发表于 2012-5-23 16:53
保存在数据库里面的。当 cid = 0的时候是一级栏目 当cid = 一级栏目的id 时候就是二级栏目

...
PHP复制代码
 
public function index()
{
    $this->load->database();
    $sql="SELECT * FROM menu";//menu假定就是你的表
    $query=$this->db->query($sql);
    foreach($query->result() as $row)
    {
        if($row->cid==0)
        {
            echo $row->name."<br>";//此处将显示第一级菜单
            $this_>readmenu($query,$row->id);//此处是准备显示下级菜单
         }
    }
}
private function readmenu($query,$id)
{
    foreach($query->result() as $row)
    {
        if($row->cid==$id)
        {
            echo "--";//此处的两个横线主要是为了突出显示是下级菜单
            echo $row->name;
            readmenu($query,$row->cid);//继续显示下级
        }
    }
}
 
复制代码


非最优代码
直接在论坛里敲的,未经测试,可能有BUG








.
 楼主| 发表于 2012-5-24 09:58:33 | 显示全部楼层
kissgxd 发表于 2012-5-24 09:16
非最优代码
直接在论坛里敲的,未经测试,可能有BUG

谢谢,但是出错。。。
Fatal error: Call to undefined function readmenu() in E:\PHP
发表于 2012-5-24 11:07:41 | 显示全部楼层
blcygzs 发表于 2012-5-24 09:58
谢谢,但是出错。。。
Fatal error: Call to undefined function readmenu() in E:\PHP

嗯 你改改呗,我只是在论坛里直接敲的,没测试过的
发表于 2012-5-24 11:08:30 | 显示全部楼层
blcygzs 发表于 2012-5-24 09:58
谢谢,但是出错。。。
Fatal error: Call to undefined function readmenu() in E:\PHP

$this_>readmenu($query,$row->id);//此处是准备显示下级菜单
这里边this后改成->不是_>我敲错了
 楼主| 发表于 2012-6-1 08:15:57 | 显示全部楼层
kissgxd 发表于 2012-5-24 11:08
$this_>readmenu($query,$row->id);//此处是准备显示下级菜单
这里边this后改成->不是_>我敲错了 ...

这个改了还是一样。。这个我改了。。
发表于 2012-6-1 11:36:18 | 显示全部楼层
blcygzs 发表于 2012-6-1 08:15
这个改了还是一样。。这个我改了。。

你不能完全按着我的做啊
我只是提供思路

本版积分规则