使用ThinkPHP的自动完成实现无限级分类实例详解


Posted in PHP onSeptember 02, 2016

一、实现效果

使用ThinkPHP的自动完成实现无限级分类实例详解 

二、主要代码

1、模板

使用ThinkPHP的自动完成实现无限级分类实例详解

  2、控制器

·index模块

使用ThinkPHP的自动完成实现无限级分类实例详解

·add模块

使用ThinkPHP的自动完成实现无限级分类实例详解 

3、模型

使用ThinkPHP的自动完成实现无限级分类实例详解

三、代码

以便于各位看官复制测试

  1、模板

<form action="__URL__/add" method="post">
栏目<select name="fid" size=20>
<option value="0">栏目</option>
<volist name='list' id='vo'>
<option value="{$vo['id']}">
{$vo['blank']}{$vo['name']}</option>
</volist>
</select><br/>
添加栏目:<input type="text" name='name'/><br/>
<input type="submit" value="添加"/> 
</form>

2、控制器

<?php
class IndexAction extends Action
{
/**
+----------------------------------------------------------
* 默认操作
+----------------------------------------------------------
*/
public function index(){
$Column=new ColumnModel();
$list=$Column->field("id,name,fid,sort,concat(sort,'-',id) nsort")->order('nsort asc')->select();
foreach($list as $key=>$val){
$layer=count(explode('-',$list[$key]['nsort']));
$list[$key]['blank']='';
for($i=0;$i<$layer;$i++){
if($i==$layer-1){
$list[$key]['blank'].='---|';
}else{
$list[$key]['blank'].='---';
}
}
}
$this->assign('list',$list);
$this->display();
}
public function add(){
$Column=new ColumnModel;
$Column->create();
if($Column->add()){
$this->success('添加成功');
}else{
$this->error($Column->getError());
}
} 
} 
?>

  3、模型

<?php
class ColumnModel extends Model{
protected $_auto=array(
array('name','trim',0,'function'),//过滤用户不小心输入的空白字符
array('sort','createsort',0,'callback'),
);
/*
*自动完成sort字段
*根据POST过来的fid来查询上级sort,以确定本级sort
*/
protected function createsort(){
$fid=$_POST['fid']?(int)$_POST['fid']:0;//如果用户没有选择父栏目,则默认父栏目id为0
if($fid!='0'){
$list=$this->where("id=$fid")->find();
$data=$list['sort'].'-'.$fid;
}else{
$data='0';
}
return $data;
}
}
?>

以上所述是小编给大家介绍的ThinkPHP的自动完成实现无限级分类实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
默默简单的写了一个模板引擎
Jan 02 PHP
php邮件发送,php发送邮件的类
Mar 24 PHP
PHP面向对象法则
Feb 23 PHP
CodeIgniter模板引擎使用实例
Jul 15 PHP
如何把php5.3版本升级到php5.4或者php5.5
Jul 31 PHP
php实现scws中文分词搜索的方法
Dec 25 PHP
PHP快速排序quicksort实例详解
Sep 28 PHP
PHP的中使用非缓冲模式查询数据库的方法
Feb 05 PHP
PHP 序列化和反序列化函数实例详解
Jul 18 PHP
PHP基于curl post实现发送url及相关中文乱码问题解决方法
Nov 25 PHP
PHP 7.4中使用预加载的方法详解
Jul 08 PHP
PHP大文件分割分片上传实现代码
Dec 09 PHP
CentOS 7.2 下编译安装PHP7.0.10+MySQL5.7.14+Nginx1.10.1的方法详解(mini版本)
Sep 01 #PHP
PHP数组编码gbk与utf8互相转换的两种方法
Sep 01 #PHP
Yii2框架数据库简单的增删改查语法小结
Aug 31 #PHP
深入浅析Yii admin的权限控制
Aug 31 #PHP
php解决和避免form表单重复提交的几种方法
Aug 31 #PHP
PHP Callable强制指定回调类型的方法
Aug 30 #PHP
thinkphp配置文件路径的实现方法
Aug 30 #PHP
You might like
php中禁止单个IP与ip段访问的代码小结
2012/07/04 PHP
PHP+jquery实时显示网站在线人数的方法
2015/01/04 PHP
PHP伪造来源HTTP_REFERER的方法实例详解
2015/07/06 PHP
PHP按指定键值对二维数组进行排序的方法
2015/12/22 PHP
PHP生成各种常见验证码和Ajax验证过程
2016/01/10 PHP
Zend Framework教程之模型Model基本规则和使用方法
2016/03/04 PHP
PHP使用Redis长连接的方法详解
2018/02/12 PHP
php libevent 功能与使用方法详解
2020/03/04 PHP
ModelDialog JavaScript模态对话框类代码
2011/04/17 Javascript
JavaScript显示当然日期和时间即年月日星期和时间
2013/10/29 Javascript
JS图片切换的具体方法(带缩略图版)
2013/11/12 Javascript
ListBox实现上移,下移,左移,右移的简单实例
2014/02/13 Javascript
JavaScript跨浏览器获取页面中相同class节点的方法
2015/03/03 Javascript
jquery实现转盘抽奖功能
2017/01/06 Javascript
JS实现旋转木马式图片轮播效果
2017/01/18 Javascript
js实现悬浮窗效果(支持拖动)
2017/03/09 Javascript
微信小程序图片选择区域裁剪实现方法
2017/12/02 Javascript
使用vue-aplayer插件时出现的问题的解决
2018/03/02 Javascript
express+vue+mongodb+session 实现注册登录功能
2018/12/06 Javascript
vue-cli history模式实现tomcat部署报404的解决方式
2019/09/06 Javascript
vue中解决拖拽改变存在iframe的div大小时卡顿问题
2020/07/22 Javascript
arcgis.js控制地图地体的显示范围超出区域自动弹回(实现思路)
2021/01/28 Javascript
[47:02]2018DOTA2亚洲邀请赛3月29日 小组赛B组 VP VS paiN
2018/03/30 DOTA
Python with用法实例
2015/04/14 Python
wxPython使用系统剪切板的方法
2015/06/16 Python
Django实现auth模块下的登录注册与注销功能
2019/10/10 Python
tensorflow中tf.slice和tf.gather切片函数的使用
2020/01/19 Python
关于python 跨域处理方式详解
2020/03/28 Python
Tensorflow安装问题: Could not find a version that satisfies the requirement tensorflow
2020/04/20 Python
Opencv求取连通区域重心实例
2020/06/04 Python
Python: glob匹配文件的操作
2020/12/11 Python
.NET remoting的两种通道是什么
2016/05/31 面试题
2015年工程部工作总结
2015/04/30 职场文书
承诺书应该怎么写?
2019/09/10 职场文书
MYSQL(电话号码,身份证)数据脱敏的实现
2021/05/28 MySQL
javascript条件式访问属性和箭头函数介绍
2021/11/17 Javascript