php 无极分类(递归)实现代码

yipeiwu_com6年前PHP代码库

复制代码 代码如下:

<?php
$conn=mysql_connect("localhost","root","myoa888");
mysql_select_db("lost63",$conn) or die("select db error");
$sql[]="Create TABLE `lost63`.`dd_book_class` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`classname` VARCHAR( 50 ) NOT NULL ,
`classid` INT NOT NULL
)";
$sql[]="insert `dd_book_class` (classname,classid) values ('小说',0)";
$sql[]="insert `dd_book_class` (classname,classid) values ('文艺',0)";
$sql[]="insert `dd_book_class` (classname,classid) values ('青春',0)";
$sql[]="insert `dd_book_class` (classname,classid) values ('励志/成功',0)";
$sql[]="insert `dd_book_class` (classname,classid) values ('少儿',0)";
$sql[]="insert `dd_book_class` (classname,classid) values ('悬疑',1)";
$sql[]="insert `dd_book_class` (classname,classid) values ('言情',1)";
$sql[]="insert `dd_book_class` (classname,classid) values ('职场',1)";
$sql[]="insert `dd_book_class` (classname,classid) values ('文学',2)";
$sql[]="insert `dd_book_class` (classname,classid) values ('科普',5)";
//print_r($sql);
/* -- insert test data -- */
foreach($sql as $value){
mysql_query($value) or die("insert data error");
}

$class_arr=array();
$recordset=mysql_query("select * from `dd_book_class`");
while($row=mysql_fetch_array($recordset)){
$class_arr[]=array($row['id'],$row['classname'],$row['classid']);
}
function classtree($n,$id){
global $class_arr;
$n = str_pad('',$n,'-',STR_PAD_RIGHT);
$n = str_replace("-"," ",$n);
for($i=0;$i<count($class_arr);$i++){
if($class_arr[$i][2]==$id){
echo $n.'┠<a href="?class='.$class_arr[$i][0].'">'.$class_arr[$i]
[1].'</a><br>';
classtree($n+1,$class_arr[$i][0]);
}
}
}
classtree(0,0);
?>

相关文章

php中global和$GLOBALS[]的分析之一

这可能引起一些问题,有些人可能漫不经心的改变一个全局变量。PHP 中全局变量在函数中使用时必须申明为全局(注意,Global这个关键字在函数中定义才有用)。 1:Global的作用是定义...

php表单提交程序的安全使用方法第1/2页

用于显示错误信息和成功信息,其实也可以直接echo出错误信息,这里我只是想我的出错信息页面漂亮点,定义了一个页面输出的函数罢了。 复制代码 代码如下:<?php // s...

php使用pdo连接并查询sql数据库的方法

本文实例讲述了php使用pdo连接并查询sql数据库的方法。分享给大家供大家参考。 具体实现代码如下: 复制代码 代码如下:$login = "root"; $passwd = "my...

php把大写命名转换成下划线分割命名

有时候需要把一个字符串中的大写转换成 _+小写的方式,在变量命名的时候会碰到这种问题,直接上代码: $name = 'AppPromoZhongQiu2014ActiveStatus...

php常用字符串长度函数strlen()与mb_strlen()用法实例分析

本文实例讲述了php常用字符串长度函数strlen()与mb_strlen()用法。分享给大家供大家参考,具体如下: int strlen ( string $string ) int...