使用ztree异步加载数据库数据形成树形菜单

本文介绍了如何在ThinkPHP5环境下,结合MySQL数据库和Ztree插件,通过Ajax异步方式动态生成树形菜单,展示小区用户位置和信息。详细内容包括数据库表设计、控制器代码和前端HTML实现,最终呈现出完整的树形结构。
摘要由CSDN通过智能技术生成

—搞了好久好久,在此记录一下这个这个胜利的时刻!!!!作为一个合格的程序员,任重而道远啊—


项目环境:thinkphp5+mysql+ztree
项目目标:从MySQL数据库获取小区用户位置信息、用户信息利用ztree动态生成树形菜单

mysql数据库表设计
小区地点表
数据库表结构
小区用户表
用户


控制器代码

/**
     * 获取小区用户位置信息\用户信息,并转换为json格式,传给前端展示
     */
    public function getLocationInfo(Request $request){
   
         //获取ztree自带提交的参数, 若是页面加载时第一次请求, 该参数为空,     
        $father_id = $request->param('id');
        //dump($father_id);

        //全局数据组
        $data = array();

        //当请求提交的参数id为空时, 只获取父菜单,
        if (!isset($father_id)) {
  //get all father menu
            //dump("进来了,只获取父菜单");
            $tempData = array();

            //获取数据
           $tempData = LocationModel::all(['LUID'=>NULL]);

           $a = array();

           $temp = array();

            /*
            * JSON数据封装时注意事项, 要求返回的json数据属性为父
            * {"id":"52","name":"","pid":"null","isParent":true}
            * 其中id为子节点id, pid为父节点id, name为节点名, isParent标明该节点是否属于父
            * 节点, 这四个属性**必须**
            */

            foreach ($tempData as $value) {
                
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值