Home > Article > Backend Development > 如何实现树节点的增删改?
数据库为MySQL,数据表结构如下:
id type name parentid
1 0 service 0
101 82 data 0
102 82 card 101
103 82 search 101
104 82 web 102
105 83 task 103
parentid为0表示是顶级。用PHP该如何实现该数据表的配置页面呢?
你先想好展示的样式
你先想好展示的样式
你最好把样式显示出来,这样就知道节点怎么获取节点值,
思路是:点击节点,通过js把值传递到服务端,服务端操作数据库。
用ztree
数据量不大的话不建议用插件,以免造成项目结构混乱。核心是递归思想。
function dafenglei_arr($m,$id){ global $class_arr; global $classid; global $mysql; if($id=="") $id=0; $n = str_pad('',$m,'-',STR_PAD_RIGHT); $n = str_replace("-"," ",$n); for($i=0;$i<count($class_arr);$i++){ if($class_arr[$i][2]==$id){ echo "<tr>\n"; echo " <td>".$n."|----<a href=\"?action=edit&id=".$class_arr[$i][0]."\">".$class_arr[$i][1]."</a></td>\n"; echo " <td><div align=\"center\">".$class_arr[$i][3]."</div></td>\n"; echo " <td><div align=\"center\"><a href=\"?action=edit&id=".$class_arr[$i][0]."\">修改</a>"; echo " <a href=\"?action=del&id=".$class_arr[$i][0]."\">删除</a>"; echo "</div></td>\n"; echo " </tr>\n"; dafenglei_arr($m+1,$class_arr[$i][0]); } }}