thinkphp框架无限级栏目的排序功能实现方法示例


Posted in PHP onMarch 29, 2020

本文实例讲述了thinkphp框架无限级栏目的排序功能实现方法。分享给大家供大家参考,具体如下:

题目中我们并没有说明是tp5的无限级排序还是tp3的无限级排序就是为了让小新手们明白,这些功能的实现跟你使用的框架是没有关系的,不管你是tp5还是tp3还是laravel还是yii框架都没有关系,我们强调的是思路,是解决问题的方法,演示的时候因为我在用tp3所以无所谓了。

无限级栏目的排序非常简单,这次以博文的方式分享给大家解决的思路。

上图:

thinkphp框架无限级栏目的排序功能实现方法示例

上图是我们实现的无限级分类,我们要注意两个字段,id和排序sort字段,目前sort字段的值都是50,是默认值。接着为大家截图数据表结构

thinkphp框架无限级栏目的排序功能实现方法示例

上图sort用来实现排序pid用来实现无限级分类

实现无限级分类的关键是我们对排序字段的写法,我们把整块代码拿到,但是用到的只有一行:

<form method="post" action="">
<table class="table table-bordered table-hover">
<thead class="">
<tr>
<th width="6%" class="text-center">ID</th>
<th width="6%" class="text-center">pid</th>
<th width="8%" class="text-center">排序</th>
<th>栏目名称</th>
<th width="16%" class="text-center">操作</th>
</tr>
</thead>
<tbody>
<volist name="cateRes" id="cate">
<tr>
<td align="center">{$cate.id}</td>
<td align="center">{$cate.pid}</td>
<td align="center">
<input type="text" name="sort[{$cate.id}]" value="{$cate.sort}" /></td>
<td><?php echo str_repeat('-', $cate['level']*8);?>{$cate.cate_name}</td>
<td align="center">
<a href="" class=" rel="external nofollow" btn btn-primary btn-sm shiny">
<i class="fa fa-edit"></i> 编辑
</a>
<a href="#" rel="external nofollow" onClick="warning('确实要删除吗', ”)" class="btn btn-danger btn-sm shiny">
<i class="fa fa-trash-o"></i> 删除
</a>
</td>
</tr>
</volist>
<tr>
<td colspan="4">
<button type="button" tooltip="排序" style="margin-left:225px; width:50px;" class="btn btn-sm btn-azure btn-addon">排序</button>
</td>
</tr>
</tbody>
</table>
</form>

上面的代码我们可以看出整个table是用form包裹的,因为我们要提交排序字段,所以需要表单。

我们实现无限极栏目排序的核心代码:

<input type="text" name="sort[{$cate.id}]" value="{$cate.sort}" />

就是这一句,实际上我们是拼装了一个sort[]数组,整个数组的每个元素的键是当前栏目的id而值是当前栏目的排序的值,这样我们一旦提交数组就可以根据id修改sort了

完整代码:

public function lst(){
$cate=D('Cate');
if(IS_POST){//排序
$data=I('sort');
foreach ($data as $k => $v) {
$cate->where(array('id'=>$k))->save(['sort'=>$v]);
}
return;
}
$cateRes=$cate->cateTree();//无限级分类树
$this->assign([
'cateRes'=>$cateRes,
]);
$this->display('list');
}

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
Windows中安装Apache2和PHP4权威指南
Nov 18 PHP
PHP生成网页快照 不用COM不用扩展.
Feb 11 PHP
PHP函数之error_reporting(E_ALL ^ E_NOTICE)详细说明
Jul 01 PHP
PHP教程之PHP中shell脚本的使用方法分享
Feb 23 PHP
PHP中soap的用法实例
Oct 24 PHP
php实现可用于mysql,mssql,pg数据库操作类
Dec 13 PHP
PHP借助phpmailer发送邮件
May 11 PHP
腾讯CMEM的PHP扩展编译安装方法
Sep 25 PHP
Yii2框架实现注册和登录教程
Sep 30 PHP
PHP bin2hex()函数基础实例讲解
Feb 11 PHP
漂亮的thinkphp 跳转页封装示例
Oct 16 PHP
基于php+MySql实现学生信息管理系统实例
Aug 04 PHP
php查看一个变量的占用内存的实例代码
Mar 29 #PHP
tp5框架前台无限极导航菜单类实现方法分析
Mar 29 #PHP
PHP中类与对象功能、用法实例解读
Mar 27 #PHP
php设计模式之职责链模式实例分析【星际争霸游戏案例】
Mar 27 #PHP
php设计模式之组合模式实例详解【星际争霸游戏案例】
Mar 27 #PHP
PhpStorm的使用教程(本地运行PHP+远程开发+快捷键)
Mar 26 #PHP
CentOS7系统搭建LAMP及更新PHP版本操作详解
Mar 26 #PHP
You might like
PHP一些常用的正则表达式字符的一些转换
2008/07/29 PHP
php数据库连接时容易出错的特殊符号问题
2010/09/01 PHP
nginx下安装php7+php5
2016/07/31 PHP
php写app接口并返回json数据的实例(分享)
2017/05/20 PHP
Laravel如何友好的修改.env配置文件详解
2017/06/07 PHP
PHP使用pdo连接access数据库并循环显示数据操作示例
2018/06/05 PHP
Laravel 解决composer相关操作提示php相关异常的问题
2019/10/23 PHP
简单的php购物车代码
2020/06/05 PHP
jquery控制listbox中项的移动并排序
2009/11/12 Javascript
jQuery getJSON 处理json数据的代码
2010/07/26 Javascript
网页打开自动最大化的js代码
2012/08/22 Javascript
jQuery中scrollLeft()方法用法实例
2015/01/16 Javascript
javascript关于运动的各种问题经典总结
2015/04/27 Javascript
浅谈Vue的加载顺序探讨
2017/10/25 Javascript
JS 中document.write()的用法和清空的原因浅析
2017/12/04 Javascript
浅谈Vue网络请求之interceptors实际应用
2018/02/28 Javascript
js获取html页面代码中图片地址的实现代码
2018/03/05 Javascript
JavaScript生成指定范围随机数和随机序列的方法
2018/05/05 Javascript
js blob类型url的视频下载问题的解决
2019/11/29 Javascript
原生js实现购物车功能
2020/09/23 Javascript
[57:09]DOTA2-DPC中国联赛 正赛 Phoenix vs Dynasty BO3 第一场 1月26日
2021/03/11 DOTA
使用Python的Treq on Twisted来进行HTTP压力测试
2015/04/16 Python
对python中return和print的一些理解
2017/08/18 Python
Python数据结构与算法之图的广度优先与深度优先搜索算法示例
2017/12/14 Python
Python实现字典按照value进行排序的方法分析
2017/12/23 Python
Python turtle画图库&amp;&amp;画姓名实例
2020/01/19 Python
Python文件操作及内置函数flush原理解析
2020/10/13 Python
CSS3改变浏览器滚动条样式
2019/01/04 HTML / CSS
联想德国官网:Lenovo Germany
2018/07/04 全球购物
金融事务专业求职信
2014/04/25 职场文书
教师节宣传方案
2014/05/23 职场文书
课外活动总结范文
2014/07/09 职场文书
2014年小学数学工作总结
2014/12/12 职场文书
实习护士自荐信
2015/03/25 职场文书
幼儿园安全教育月活动总结
2015/05/08 职场文书
2016同学毕业寄语大全
2015/12/04 职场文书