ホームページ >バックエンド開発 >PHPチュートリアル >無限レベルmenuの実装_PHPチュートリアル

無限レベルmenuの実装_PHPチュートリアル

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-07-21 16:07:41952ブラウズ


明日 (もう今日ですね、笑) のテスト ページを提供します。みんな見に来てください (寮内でインターネットしかダイヤルできないのでIPアドレスは固定ではありません)

*/

/** 子ノード関数の再帰表示
*
*
* @param $SearchPattern 検索条件(っぽい)
* @param $BaseNum ノードの階層数
*/

Function listChildtree ($ Searchpattern, $ Basenum) { fullyデータベースに接続するためのハンドル= $ tree- fetch_array($ queryChild){// get child node "; (*) from test whereDepartmentId like '$ChildDepartment'";//子ノードの子ノードを検索 ql); "ta".trim($Result[0]); // テーブル ID を設定します
($ChildResult [ 0]<1){// 子ノードのノードが見つからない場合は、「-」のピクチャが表示されます
「腹筋」>< ;/a>
}それ以外の場合は、「+」画像を見つけます
& lt; & lt; a Onclick = " = = = = $ Tableid ?>','')" style="cursor:hand">
font size="2" >< ;/a>
ListChildTree($ChildDepartment,$BaseNum);//関数自体を再帰的に呼び出して他の子ノードを表示します

}//関数終了 ?>
< html>

無限メニューテスト






require("do_mySql.php");
$Tree = new DB_Sql;
$Tree->connect();//连接数据库,可根据需要换成自己的代码

  $Sql="select DepartmentId,DepartmentName from test where length(DepartmentId)=3";//提出最上层节点(祖宗节点),根据需要自己修改
  $Result=$Tree->query_first($Sql);
?>

                         
  
                         
                           
                             
      
                     
        
         
                   
                     
              
         
        
                                                                                      
        
          $FirstDepartment=$Result[0];
$BaseNum=strlen($FirstDepartment)/3;//计算层数,其实这个有点多余,因为其必为第一层
$SearchPattern=$FirstDepartment."___"; //设置查找条件
ListChildTree($SearchPattern,$BaseNum); //显示祖宗节点的孩子节点
?>
        

        

       

;


の設計は非常に単純です:

CREATE TABLE test (
id mediaint(8) unsigned NOT NULL auto_increment, #serial番号
部門 ID varchar(100) NOT NULL default '', # ユニット コード
DepartmentName varchar(100) NOT NULL default '', #Unit name
KEY id (id)
)

ここではデータ挿入コードは与えません (書くのは簡単です、誰でも書き出せると思います)

データテーブルのルールは次のとおりです:

001 は最初のレベルです (999 が十分でない場合は、自分で追加してください)
001001 は最初の子ノードです001、001002 は 001 の 2 番目の子ノードです。
001001001 は 001001 の最初の子ノードです。以下同様です...

ここでは「祖先」 (001) を 1 つだけ設定しているため、プログラム内で直接呼び出します。必要に応じて自分で設定し、コードを変更するだけです。

それでは、ご質問がございましたら、お気軽にご相談ください。皆さんの仕事が素晴らしい一日になることをお祈りしています。
寝る前にタバコを吸いましょう!すごく疲れた! (webFtp を書いたばかりなので、必要な兄弟姉妹がいたらメールしてください)
*/


?>





http://www.bkjia.com/PHPjc/314993.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/314993.html技術記事 ?/* 多くの友人が無制限のレベル メニューについて質問しているのを見ました (実際、理論上はまだレベルが存在します。結局のところ、データベースのフィールド タイプなどの都合の良い条件が適用されます)。...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。