首页 > 数据库技术 > 详细

Thinkphp通过mysql实现无限级分类

时间:2019-09-09 13:08:12      阅读:113      评论:0      收藏:0      [点我收藏+]
CREATE TABLE IF NOT EXISTS `think_cate` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` char(30) NOT NULL,
  `pid` int(11) NOT NULL,
  `path` varchar(200) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=12 ;
INSERT INTO `think_cate` (`id`, `name`, `pid`, `path`) VALUES
(1, ‘新闻‘, 0, ‘0‘),
(2, ‘中国新闻‘, 1, ‘0-1‘),
(3, ‘美国新闻‘, 1, ‘0-1‘),
(4, ‘北京新闻‘, 2, ‘0-1-2‘),
(5, ‘华盛顿新闻‘, 3, ‘0-1-3‘),
(6, ‘海淀新闻‘, 4, ‘0-1-2-4‘),
(7, ‘上地新闻‘, 6, ‘0-1-2-4-6‘),
(8, ‘七街新闻‘, 7, ‘0-1-2-4-6-7‘),
(9, ‘9号楼新闻‘, 8, ‘0-1-2-4-6-7-8‘),
(11, ‘体育‘, 0, ‘0‘);
        function index(){
            $cate=D(‘cate‘);
            
            $list=$cate->field("id,name,pid,path,concat(path,‘-‘,id) as bpath")->order(‘bpath‘)->select();
            
            foreach($list as $key=>$value){
                $list[$key][‘count‘]=count(explode(‘-‘,$value[‘bpath‘]));
            }
            

            $this->assign(‘alist‘,$list);
            
            $this->display();
        }
请选择父级栏目<select name="pid" size="20">
            <option value="0">根栏目</option>
            <volist name="alist" id="vo">
            <option value="{$vo[‘id‘]}">
                <php>
                    for($i=0;$i<$vo[‘count‘]*2;$i++){
                                echo ‘&nbsp;‘;
                    
                    }
                </php>
                {$vo[‘name‘]}</option>
            </volist>

</select><br>

 

Thinkphp通过mysql实现无限级分类

原文:https://www.cnblogs.com/fksdy/p/11490993.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!