PHP无限分类制作及实例完整下载

时间:2016-11-30 10:04:35 类型:PHP
字号:    

        有了PHP无限分类, 我们WEB平台设计开发中, 就无需再进行多次手动写代码, 多次建表, 效率低下, 使用也及其不方便, 这里为了PHP程序开发者的学习及工作使用方便, 给大家制作了完整的PHP无限分类分享及实例下载, 好了, 废话不多说, 直接说制作过程及使用方法.

         1. 建设数据库表: sortclass   表名字段如下:

                

     2.   文件结构如下:

            PHP无限分类文件结构图

      3.  显示效果如下[index.php]:

           PHP无限分类显示效果 

          调用fun.php文件中的函数get_Children_Class(), 代码如下:

     

/*
	
	作用:显示类别信息
	函数名:get_Children_Class() 
	$parentid: 要显示此ID下及子孙所有类别信息
	&$db:   连接数据库
	&$arr:  存储的数组
	$space:  间隔符号
	$childResult: 直属子类
	$level: 判断当前是第几级, 默认0,表示第一级
	author: carl  from: http://www.ncyteng.com

*/
function get_Children_Class($parentid=0,&$db,&$arr=array(),$space="",$level=0,$childResult=""){
	/*第一次循环需要查询到一级类别信息, 递归时将直接获得判断有没有时查询到的信息*/
	if(empty($childResult)){
		$sql = "SELECT * FROM sortclass WHERE parentid=$parentid order by orders asc";
		$childResult = query($db,$sql,true);
	}
	if($childResult){
		foreach($childResult as $row){
			if($level==0)$row["space"]=$space;
			elseif($level==1)$row["space"]=$space="  |---->";
			else $row["space"] = $space;
			$arr[] = $row;
			/*查询子类*/
			$parentid = $row["id"];
			$sql = "SELECT * FROM sortclass WHERE parentid=$parentid order by orders asc";
			$childResult = query($db,$sql,true);
			if($childResult)
				{
					get_Children_Class($parentid,$db,$arr,"  |".$space,$level+1,$childResult);
				}
			/*有子类就添加到$arr数组中*/
			
		}
	}
	return $arr;
}


      4.  调用无限分类显示select下拉列表fun.php文件中的函数: select_trees()

           显示效果如下:

       PHP无限分类调用下拉显示列表

               代码如下:

               

/*
	作用: 显示无限分类select下拉列表
	$parentid:  下拉此父类下别的类别
	$currentid:  当前选中的类别ID
	author: carl  from: http://www.ncyteng.com
*/
function select_trees($parentid=0,&$db,$currentid=0,$selectname="sortid"){
	$str = "";
	$result = get_Children_Class($parentid,$db);
	if($result){
	  $str .= "<select name='$selectname'>\n";
	  foreach($result as $row){
		$checked = ($currentid==$row["id"])?"selected":"";
		if($checked) $str .= "	<option value='".$row["id"]."' style='background-color: #E20A0A; color:#fff'  $checked>".$row["space"].$row["sortname"]."</option> \n";
		else $str .= "	<option value='".$row["id"]."'>".$row["space"].$row["sortname"]."</option> \n";  
	  }
	  $str .= "</select>\n";
	}
	return $str;
}


    5. 所有调用的函数文件都放在 fun.php文件中 

    6. 下载完整实例[配置好数据库信息conndb()函数中数据库名, 用户名及密码], 即可直接运行

        

sort.zip