無限級分類迭代方法的編輯操作方法

2021-08-30 17:19:35 字數 1957 閱讀 5457

無限級分類使用迭代的方法時,在顯示編輯頁面的時候,需要將編輯的分類所對應的本身及其所有子分類從分類列表中清楚,該**的edit動作即完成此工作。同時還加入了css控制的顯示效果。

1. /*

2. * 迭代sql查詢,生成無限級分類樹

3. * 資料結構

4. create table `cat` (

5. `cid` int(5) unsigned not null auto_increment,

6. `cname` varchar(50) not null,

7. `lev` int(5) unsigned not null comment '分類層數',

8. `pid` int(5) unsigned not null comment '上級cid',

9. primary key (`cid`)

10. )

11. */

12. error_reporting(7);

13. mysql_connect("localhost", "hfphp", "hfphp");

14. mysql_select_db("test");

15. mysql_query("set names utf8");

16.

17. $act = $_get['act'];

18. if($act == "edit")

24. $query = "select * from cat where cid='$edited_cid'";

25. $res = mysql_query($query);

26. $edited_cat = @mysql_fetch_assoc($res);

27.

28. $okarr = array();//儲存目錄樹的陣列

29. $pid = 0;

30. getcat($pid);

31. ?>

32.63. < ?php

64. }elseif($act == "insert") elseif($row['lev'] < = $lastlev)

115. }

116. echo " class='dd".str_replace(" ", " dd", implode(" ", array_keys($classarr)))."' ";

117. $lastlev = $row['lev'];

118.

119.

120. if($row['lev'] != 1)

123. echo ">";

124.

125. //多層級的佔位符

126. for($i=1;$i< $row['lev'];$i++)

129.

130. echo $row['cname'].',lev:'.$row['lev'];

131.

132. echo "  編輯";

133.

134. echo " ";

135. echo "";

136. }

137. echo "";

138. echo "建立新分類";

139. ?>

140.

157. < ?php

158. }

159.

160. function getcat($pid)

172. }

173. }

用迭代實現無限級分類

說起那個無限級分類,相信很多人都知道是什麼東西,也曾經做過。我也相信,大家用得最多的實現方式就是做乙個遞迴。最近我也要做乙個帶無限級分類的選單,但是我又不想用遞迴來做,所以我需要用其他方式來實現,那就是迭代了。首先,我需要定義乙個實體模型,這舉乙個省市無限級的例子 class loaction pu...

PHP迭代與遞迴實現無限級分類

無限級分類是開發中常見的情況,因此本文對常見的無限極分類演算法進行總結歸納.1.迴圈迭代實現 arr 1 id 1,name 父1 father null 2 id 2,name 父2 father null 3 id 3,name 父3 father null 4 id 4,name 兒1 1 f...

PHP迭代與遞迴實現無限級分類

無限級分類是開發中常見的情況,因此本文對常見的無限極分類演算法進行總結歸納.1 arr 2 1 id 1,name 父1 father null 3 2 id 2,name 父2 father null 4 3 id 3,name 父3 father null 5 4 id 4,name 兒1 1 ...