zoukankan      html  css  js  c++  java
  • 我的PHP树的代码,可以嵌套任意层

    简介:这是我的PHP树的代码,可以嵌套任意层的详细页面,介绍了和php,有关的知识、技巧、经验,和一些php源码等。

    class='pingjiaF' frameborder='0' src='http://biancheng.dnbcw.info/pingjia.php?id=323737' scrolling='no'>

    P><?
      $handle = ora_plogon(sender,password) or die("数据库连接失败!");
      $cursor=ora_open($handle);                          file://公共游标
      $cursor_tree=ora_open($handle);                     file://建立树专用游标
      $num=0;                                             file://保存游标数值变量
      ora_commiton($handle);                              file://自动开启oracle的提交
    ?>

    <?
    file://建立树的主要函数,传递的参数为根节点的编号和根节点的标题
    function create_tree($rootid,$roottilte){
      print_parent_from_rootsortid($rootid,$roottilte);
    }
    file://打印根节点div头的函数
    function print_parent_from_rootsortid($rootid,$roottilte){
      $parent_fullname="R".$rootid."Parent";                      file://div 父级区别标志
      $parent_id="R".$rootid;
      $parent_pic="R".$rootid."img";
      echo "
          <DIV class=parent id=$parent_fullname><A
          href=\"http://www.csdn.net/expert/menu.shtm#\"
          onclick=\"expandIt('$parent_id'); return false\"><IMG border=0 height=13 id=$parent_pic
          src=\"image/folderclosed000.gif\" width=19>$roottilte</A></DIV>";

      global $cursor_tree;
      $Bottom_Flag=0;
      $len=strlen($rootid)+2;      file://子级编码为父级编码长度加2
      $query = "SELECT ResourceSortNo,ResourceSortName,SectionBottomFlag
                From TbSort
                Where length(ResourceSortNo)=$len and ResourceSortNo like '$rootid%'";            file://sql查询语句
      ora_parse($cursor_tree, $query) or die;
      ora_exec($cursor_tree);

      $child_fullname="R".$rootid."Child";                     file://div 子级区别标志
      echo "<DIV class=child id=$child_fullname>";             file://打印一个div子级头
      while(ora_fetch($cursor_tree)){
        $Sort_No  = trim(ora_getcolumn($cursor_tree,0));
        $Sort_Title = trim(ora_getcolumn($cursor_tree,1));
        $Bottom_Flag  = trim(ora_getcolumn($cursor_tree,2));
        print_child_from_rootsortid($Sort_Title,$Sort_No, $Bottom_Flag);           file://循环调用打印子级编码函数
      }
      echo "</DIV>";

    }
    file://判断是否是末级标志,并且打印子级编码的函数
    function print_child_from_rootsortid($Section_Title,$Section_No,$Bottom_Flag){
      global $num;
      $len=2*$num+2;
      for($j=0;$j<$len;$j++){
        echo "&nbsp";
      }                                                                   file://输出节点之间间距空格的循环

      if($Bottom_Flag==1){
        echo "
        <IMG border=0 height=13 src=\"image/folderclosed000.gif\" width=19>
        <A href=\"http://www.csdn.net/expert/exchange.asp\" target=forum>$Section_Title</A><BR>";
      }else{
        $p_id="R".$Section_No;
        $p_pic="R".$Section_No."img";
        echo "
        <IMG border=0 height=13 id=$p_pic src=\"image/folderclosed000.gif\" width=19>
        <A href=\"http://www.csdn.net/expert/exchange.asp\" onclick=\"expandIt('$p_id'); return false\">$Section_Title</A><BR>";
        $child_fullname="R".$Section_No."Child";
        echo "<DIV class=child id=$child_fullname>";                     file://打印div子标志头
        find_allchild_from_rootsortid($Section_No);                      file://查找子级别内容-----嵌套递归函数甲
        echo "</DIV>";                                                   file://打印div子标尾部

      }

    }
    file://查询所有子级编码的函数
    function find_allchild_from_rootsortid($Section_No){
      global $handle,$num;
      $num++;
      $cursor_ary[$num] = ora_open($handle);
      $len=strlen($Section_No)+2;      file://μ?μ?×ó??±e±ào?3¤?è
      $query = "SELECT ResourceSortNo,ResourceSortName,SectionBottomFlag
                From TbSort
                Where length(ResourceSortNo)=$len and ResourceSortNo like '$rootid%'";            file://sql查询语句
      ora_parse($cursor_ary[$num], $query) or die;
      ora_exec($cursor_ary[$num]);
      while(ora_fetch($cursor_ary[$num]))
      {
        $Sort_Title = trim(ora_getcolumn($cursor_ary[$num],1));
        $Sort_No  = trim(ora_getcolumn($cursor_ary[$num],0));
        $Bottom_Flag  = trim(ora_getcolumn($cursor_ary[$num],2));
        print_child_from_rootsortid($Sort_Title,$Sort_No,$Bottom_Flag);       file://打印所有的子级节点-----嵌套递归函数乙
      }
      $num--;
    }


    ?>

    “我的PHP树的代码,可以嵌套任意层”的更多相关文章 》

    爱J2EE关注Java迈克尔杰克逊视频站JSON在线工具

    http://biancheng.dnbcw.info/php/323737.html pageNo:16
  • 相关阅读:
    USACO 3.3 A Game
    USACO 3.3 Camelot
    USACO 3.3 Shopping Offers
    USACO 3.3 TEXT Eulerian Tour中的Cows on Parade一点理解
    USACO 3.3 Riding the Fences
    USACO 3.2 Magic Squares
    USACO 3.2 Stringsobits
    USACO 3.2 Factorials
    USACO 3.2 Contact
    USACO 3.1 Humble Numbers
  • 原文地址:https://www.cnblogs.com/ooooo/p/2255882.html
Copyright © 2011-2022 走看看