帝国cms无限级循环输出栏目导航函数

函数可以循环输出所有栏目的列表,不管栏目有几级,都会输出

  1. <?php
  2. require('../class/connect.php');
  3. require('../class/db_sql.php');
  4. require("../class/q_functions.php");
  5. require('../data/dbcache/class.php');
  6. $link=db_connect();
  7. $empire=new mysqlquery();
  8. //获取网站栏目
  9. function user_ListCats($bclassid) {
  10.     global $empire$dbtbpre,$class_r;
  11.     $sql=$empire->query("select classid, classname, bclassid, islast, classpath, classurl,tbname,sonclass,classimg from {$dbtbpre}enewsclass where bclassid='$bclassid' and wburl='' order by myorder,classid");
  12.     $num=$empire->num1($sql);
  13.     if ($num == 0 && $bclassid == 0)//无记录
  14.     {
  15.         echo $GLOBALS['notrecordword'];
  16.         return "";
  17.     }
  18.     if ($num == 0)
  19.     {
  20.         return '';
  21.     }
  22.     $i = 1;
  23.     while ($r=$empire->fetch($sql))
  24.     {
  25.         //        如果不是终极栏目,显示其子目录
  26.         if($_GET['toHtml']){
  27.             $url=$_GET['root'].$r['classpath'];
  28.         }else{
  29.             $url=$_GET['root'].'listInfo.php?classid='.$r['classid'];
  30.         }
  31.         $select = $_GET['classid']==$r['classid']?'class="mm-selected"':'';
  32.         if(emptyempty($r[islast]) )
  33.         {
  34.           echo '<li '.$select.'><a href="' .$url'"><i class="iconfont icon-'.($r['classimg']?$r['classimg']:$r['tbname']).'"></i> ' . $r[classname] . '</a>';
  35.                     if($r[sonclass]){
  36.                              echo '<ul>'."\r\n";
  37.                                 user_ListCats($r[classid], $showMore);
  38.                             echo '</ul>'."\r\n";
  39.                     }
  40.                             echo '</li>';
  41.         } else {
  42.          echo '<li '.$select.'><a href="' . $url . '"><i class="iconfont icon-'.($r['classimg']?$r['classimg']:$r['tbname']).'"></i> ' . $r[classname] . '</a></li>';
  43.         }
  44.         $i += 1;
  45.     }
  46. }
  47. echo @user_ListCats();
  48. db_close();
  49. $empire=null;
  50. ?>
THE END