1. 云栖社区>
  2. PHP教程>
  3. 正文

Thinkphp无限级分类代码

作者:用户 来源:互联网 时间:2017-12-01 20:30:01

代码分类

Thinkphp无限级分类代码 - 摘要: 本文讲的是Thinkphp无限级分类代码, 本篇就一点一点教大家写一个无限级分类出来,其实掌握一个知识,最主要的是要掌握无限级分类的逻辑,那么写起来就很容易的多了。首先看数据库表:xp_cate控制器:CateAction.class.php<?phpclass CateAc


本篇就一点一点教大家写一个无限级分类出来,其实掌握一个知识,最主要的是要掌握无限级分类的逻辑,那么写起来就很容易的多了。

首先看数据库表:xp_cate

Thinkphp无限级分类代码
控制器:CateAction.class.php



<?phpclass CateAction extends Action{function index(){$cate=M('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();}//添加栏目function add(){$cate=new CateModel();if($vo=$cate->create()){if($cate->add()){$this->success('添加栏目成功');}else{$this->error('添加栏目失败');}}else{$this->error($cate->getError());}}}?>


模型:CateModel.class.php

<?phpclass CateModel extends Model{//对应数据库中的表xp_cateprotected $_auto=array(array('path','tclm',3,'callback'),);function tclm(){$pid=isset($_POST['pid'])?(int)$_POST['pid']:0;echo ($pid);if($pid==0){$data=0;}else{$list=$this->where("id=$pid")->find();$data=$list['path'].'-'.$list['id'];//子类的path为父类的path加上父类的id}return $data;}}?>


模板:index.html

<form action="/Article/add" method="post">请选择父级栏目:<select name="pid" size="20"><option value="0">根栏目</option><volist name="alist" id="vo"><option value="{$vo['id']}"><for start="0" end="$vo['count']">  </for>{$vo['name']}</option></volist></select><br />新的栏目名称:<input type="text" name="name" /><br /><input type="submit" value="添加栏目" /></form>


显示结果如下:

Thinkphp无限级分类代码
有没有掌握无限级分类的逻辑,上文分享的thinkphp无限级分类代码,希望对大家的学习有所帮助。Thinkphp无限级分类代码

以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索代码 分类 ,以便于您获取更多的相关知识。