>백엔드 개발 >PHP 튜토리얼 >如何实现树节点的增删改?

如何实现树节点的增删改?

WBOY
WBOY원래의
2016-06-23 13:55:431191검색

数据库为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]);		}		}}

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.