欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

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

程序员文章站 2022-05-01 09:08:50
...
  1. $conn=mysql_connect("localhost","root","myoa888");

  2. mysql_select_db("lost63",$conn) or die("select db error");
  3. $sql[]="Create TABLE `lost63`.`dd_book_class` (
  4. `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
  5. `classname` VARCHAR( 50 ) NOT NULL ,
  6. `classid` INT NOT NULL
  7. )";
  8. $sql[]="insert `dd_book_class` (classname,classid) values ('小说',0)";
  9. $sql[]="insert `dd_book_class` (classname,classid) values ('文艺',0)";
  10. $sql[]="insert `dd_book_class` (classname,classid) values ('青春',0)";
  11. $sql[]="insert `dd_book_class` (classname,classid) values ('励志/成功',0)";
  12. $sql[]="insert `dd_book_class` (classname,classid) values ('少儿',0)";
  13. $sql[]="insert `dd_book_class` (classname,classid) values ('悬疑',1)";
  14. $sql[]="insert `dd_book_class` (classname,classid) values ('言情',1)";
  15. $sql[]="insert `dd_book_class` (classname,classid) values ('职场',1)";
  16. $sql[]="insert `dd_book_class` (classname,classid) values ('文学',2)";
  17. $sql[]="insert `dd_book_class` (classname,classid) values ('科普',5)";
  18. //print_r($sql);
  19. /* -- insert test data -- */
  20. foreach($sql as $value){
  21. mysql_query($value) or die("insert data error");
  22. }
  23. $class_arr=array();

  24. $recordset=mysql_query("select * from `dd_book_class`");
  25. while($row=mysql_fetch_array($recordset)){
  26. $class_arr[]=array($row['id'],$row['classname'],$row['classid']);
  27. }
  28. function classtree($n,$id){
  29. global $class_arr;
  30. $n = str_pad('',$n,'-',STR_PAD_RIGHT);
  31. $n = str_replace("-"," ",$n);
  32. for($i=0;$iif($class_arr[$i][2]==$id){
  33. echo $n.'┠'.$class_arr[$i]
  34. [1].'

  35. ';
  36. classtree($n+1,$class_arr[$i][0]);
  37. }
  38. }
  39. }
  40. classtree(0,0);
  41. ?>
复制代码