使用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 相关文章推荐
php下过滤html代码的函数 提高程序安全性
Mar 02 PHP
php数组函数序列之array_unique() - 去除数组中重复的元素值
Oct 29 PHP
php标签云的实现代码
Oct 10 PHP
解决FastCGI 进程超过了配置的活动超时时限的问题
Jul 03 PHP
php获得客户端浏览器名称及版本的方法(基于ECShop函数)
Dec 23 PHP
WordPress的主题编写中获取头部模板和底部模板
Dec 28 PHP
Zend Framework框架之Zend_Mail实现发送Email邮件验证功能及解决标题乱码的方法
Mar 21 PHP
利用Laravel事件系统如何实现登录日志的记录详解
May 20 PHP
PHP基于迭代实现文件夹复制、删除、查看大小等操作的方法
Aug 11 PHP
PHP聊天室简单实现方法详解
Dec 08 PHP
php7下的filesize函数
Sep 30 PHP
Laravel框架处理用户的请求操作详解
Dec 20 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 jquery 实现新闻标签分类与无刷新分页
2009/12/18 PHP
QQ登录 PHP OAuth示例代码
2011/07/20 PHP
ThinkPHP模板范围判断输出In标签与Range标签用法详解
2014/06/30 PHP
Laravel 5框架学习之Blade 简介
2015/04/08 PHP
php分割合并两个字符串的函数实例
2015/06/19 PHP
讲解WordPress开发中一些常用的debug技巧
2015/12/18 PHP
php图形jpgraph操作实例分析
2017/02/22 PHP
PHP实现在windows下配置sendmail并通过mail()函数发送邮件的方法
2017/06/20 PHP
php输出反斜杠的实例方法
2019/09/19 PHP
PHP实现数组根据某个字段进行水平合并,横向合并案例分析
2019/10/08 PHP
javascript css styleFloat和cssFloat
2010/03/15 Javascript
extjs3 combobox取value和text案例详解
2013/02/06 Javascript
把jQuery的类、插件封装成seajs的模块的方法
2014/03/12 Javascript
javascript字母大小写转换的4个函数详解
2014/05/09 Javascript
javascritp添加url参数将参数加入到url中
2014/09/25 Javascript
分享一款基于jQuery的视频播放插件
2014/10/09 Javascript
基于JQuery制作可编辑的表格特效
2014/12/23 Javascript
Bootstrap打造一个左侧折叠菜单的系统模板(二)
2016/05/17 Javascript
jQuery文字提示与图片提示效果实现方法
2016/07/04 Javascript
解决URL地址中的中文乱码问题的办法
2017/02/10 Javascript
在vue.js中抽出公共代码的方法示例
2017/06/08 Javascript
Node.JS 循环递归复制文件夹目录及其子文件夹下的所有文件
2017/09/18 Javascript
angularJs 表格添加删除修改查询方法
2018/02/27 Javascript
在 Vue-CLI 中引入 simple-mock实现简易的 API Mock 接口数据模拟
2018/11/28 Javascript
ES6 Generator函数的应用实例分析
2019/06/26 Javascript
vue中解决微信html5原生ios虚拟键返回不刷新问题
2020/10/20 Javascript
python之pyqt5通过按钮改变Label的背景颜色方法
2019/06/13 Python
新手学习Python2和Python3中print不同的用法
2020/06/09 Python
女大学生自我鉴定
2013/12/09 职场文书
职工擅自离岗检讨书
2014/09/23 职场文书
幼儿园教师个人总结
2015/02/05 职场文书
会计工作检讨书
2015/02/19 职场文书
三严三实·严以修身心得体会
2016/01/15 职场文书
校园安全学习心得体会
2016/01/18 职场文书
实用干货:敬酒词大全,帮你应付各种场合
2019/11/21 职场文书
Python基于Opencv识别两张相似图片
2021/04/25 Python