php+mysql实现无限级分类 | 树型显示分类关系


Posted in PHP onNovember 19, 2006

无限级分类,主要是通过储存上级分类的id以及分类路径来实现。由于数据的结构简单,所以要将分类的关系由树状显示,我只能想到用递归的方式给于实现。 

无限级分类,主要是通过储存上级分类的id以及分类路径来实现。由于数据的结构简单,所以要将分类的关系由树状显示,我只能想到用递归的方式给于实现,下面是分类数据表结构和自己写的一个树状显示函数,有什么不妥的地方希望大家能指出。 
表结构:id字段为分类标识,name字段为分类名,father_id字段为所属父分类的id,path字段为分类路径(储存该分类祖先的集合),isdir判断是否是目录(1为是,0为否)。

显示函数:

//$count为分类等级  
sort_list($str,$fatherid,$count)  
{  
$rs = $this->sql->re_datas("select * from sort where father_id = fatherid");  
$num = $this->sql->sql_numrows();  
$i=0;  
$n = 1;  
while(isset($rs[$i]))  
{  
$name = "";  
for($n = 1 ; $n < $count ; $n++)  
{  
$name.="│ ";  
}  
if($i+1==$num)  
{  
$name.="└─".$rs[$i][name];  
}  
else  
{  
$name.="├─".$rs[$i][name];  
}  
if($rs[$i][isdir])  
{  
$str.="<span style='color:#CCCCCC'>".$name."</span>";  
}  
else  
{  
$str.=$name";  
}  
$temp = $count+1;  
$str = $this->sort_list($str,$rs[$i][id],$temp);  
$i++;  
}  
return $str;  
} 

其中$this->sql对象为sql操作类对象,re_datas()函数返回查到的数组,sql_numrows()函数返回查询到的数目

调用方法:$sort_list = sort_list($sort_list,0,1);

以上为个人思想,还望大家多多指点

PHP 相关文章推荐
利用static实现表格的颜色隔行显示的代码
Sep 02 PHP
php 操作excel文件的方法小结
Dec 31 PHP
LotusPhp笔记之:基于ObjectUtil组件的使用分析
May 06 PHP
php中怎么搜索相关联数组键值及获取之
Oct 17 PHP
php导出中文内容excel文件类实例
Jul 06 PHP
php实现复制移动文件的方法
Jul 29 PHP
php 生成Tab键或逗号分隔的CSV
Sep 24 PHP
php版微信返回用户text输入的方法
Nov 14 PHP
php下载远程大文件(获取远程文件大小)的实例
Jun 17 PHP
PHP7扩展开发教程之Hello World实现方法示例
Aug 03 PHP
PHP如何通过表单直接提交大文件详解
Jan 08 PHP
Laravel使用模型实现like模糊查询的例子
Oct 24 PHP
PHP生成静态页面详解
Nov 19 #PHP
smarty实例教程
Nov 19 #PHP
PHP编程中八种常见的文件操作方式
Nov 19 #PHP
PHP初学入门
Nov 19 #PHP
PHP5新特性: 更加面向对象化的PHP
Nov 18 #PHP
Windows中安装Apache2和PHP4权威指南
Nov 18 #PHP
Win2003下APACHE+PHP5+MYSQL4+PHPMYADMIN 的简易安装配置
Nov 18 #PHP
You might like
PHP多线程抓取网页实现代码
2010/07/22 PHP
php将时间差转换为字符串提示
2011/09/07 PHP
php缩放图片(根据宽高的等比例缩放)实例介绍
2013/06/09 PHP
php函数serialize()与unserialize()用法实例
2014/11/06 PHP
详谈配置phpstorm完美支持Codeigniter(CI)代码自动完成(代码提示)
2017/04/07 PHP
PHP+redis实现的悲观锁机制示例
2018/06/12 PHP
js 完美图片新闻轮转效果,腾讯大粤网首页图片轮转改造而来
2011/11/21 Javascript
Javascript处理DOM元素事件实现代码
2012/05/23 Javascript
js或者jquery判断图片是否加载完成实现代码
2013/03/20 Javascript
跟我学习javascript的prototype使用注意事项
2015/11/17 Javascript
JavaScript实现搜索框的自动完成功能(一)
2016/02/25 Javascript
JS 面向对象之继承---多种组合继承详解
2016/07/10 Javascript
JS对大量数据进行多重过滤的方法
2016/11/04 Javascript
工作中常用的js、jquery自定义扩展函数代码片段汇总
2016/12/22 Javascript
微信小程序商城项目之购物数量加减(3)
2017/04/17 Javascript
Vue学习笔记进阶篇之vue-cli安装及介绍
2017/07/18 Javascript
快速处理vue渲染前的显示问题
2018/03/05 Javascript
webpack实现一个行内样式px转vw的loader示例
2018/09/13 Javascript
vue2.0 路由模式mode=&quot;history&quot;的作用
2018/10/18 Javascript
在vue中阻止浏览器后退的实例
2019/11/06 Javascript
Vue作用域插槽实现方法及作用详解
2020/07/08 Javascript
Node.js web 应用如何封装到Docker容器中
2020/09/01 Javascript
javascript实现京东快递单号的查询效果
2020/11/30 Javascript
python三方库之requests的快速上手
2019/03/04 Python
Python中一般处理中文的几种方法
2019/03/06 Python
将Python文件打包成.EXE可执行文件的方法
2019/08/11 Python
Python Web框架之Django框架Model基础详解
2019/08/16 Python
Python爬取新型冠状病毒“谣言”新闻进行数据分析
2020/02/16 Python
构建高效的python requests长连接池详解
2020/05/02 Python
ProBikeKit美国官网:自行车套件,跑步和铁人三项套件
2016/10/13 全球购物
英国最受欢迎的手表网站:Watch Shop
2016/10/21 全球购物
丝芙兰巴西官方商城:SEPHORA巴西
2016/10/31 全球购物
岗位职责风险点
2014/03/12 职场文书
推广普通话标语
2014/06/27 职场文书
优秀教师申报材料
2014/12/16 职场文书
2019年描写人生经典诗句大全
2019/07/08 职场文书