菜单的无限添加编辑和删除代码

Original 2019-05-17 19:53:05 226
abstract:菜单的无限添加、编辑、删除,可以更灵活的设置网站栏目,练习代码如下:<?php /**  * Date: 2019/5/17  * Time: 10:18  */ namespace app\yejuzhi\controller; use think\Controller; use Util

菜单的无限添加、编辑、删除,可以更灵活的设置网站栏目,练习代码如下:

<?php
/**
 * Date: 2019/5/17
 * Time: 10:18
 */

namespace app\yejuzhi\controller;
use think\Controller;
use Util\SysDb;


class Menu extends Base
{
    public function index()
    {
        $pid = (int)input('get.pid');
        $where['pid'] = $pid;
        //加载菜单列表
        $data['lists'] = $this->db->table('admin_menus')->where($where)->order('ord asc')->lists();
        $data['pid'] = $pid;

        //子菜单查询
        if($pid>0){
            $parent = $this->db->table('admin_menus')->where(array('mid'=>$pid))->item();
            //返回上级菜单
            $data['backid']=$parent['pid'];
        }
        return $this->fetch('',$data);
    }

    //添加、编辑菜单
    public function add(){
        $pid = (int)input('get.pid');       //子菜单添加
        $mid = (int)input('get.mid');      //编辑菜单获取mid
        $data['parent_menu'] =$this->db->table('admin_menus')->where(array('mid'=>$pid))->item();
        $data['menu'] =$this->db->table('admin_menus')->where(array('mid'=>$mid))->item();
        return $this->fetch('',$data);
    }

    //保存菜单
    public function save(){
        $mid = (int)input('post.mid');
        $data['pid'] = (int)input('post.pid');
        $data['title'] = trim(input('post.title'));
        $data['controller'] =trim(input('post.controller'));
        $data['method'] = trim(input('post.method'));
        $data['ord'] = (int)input('post.ord');
        $data['ishidden'] = (int)input('post.ishidden');
        $data['status'] = (int)input('post.status');

        //验证数据
        if($data['title'] == ''){
            exit(json_encode(array('code'=>1,'msg'=>'菜单名称不能为空')));
        }
        if($data['controller'] == ''){
            exit(json_encode(array('code'=>1,'msg'=>'控制器不能为空')));
        }
        if($data['method'] == ''){
            exit(json_encode(array('code'=>1,'msg'=>'方法不能为空')));
        }

        if($mid){
            //数据更新
            $res = $this->db->table('admin_menus')->where(array('mid'=>$mid))->update($data);
        }else{
            //数据入库
            $res = $this->db->table('admin_menus')->insert($data);
        }



        //判断是否保存成功
        if(!$res){
            exit(json_encode(array('code'=>1,'msg'=>'保存失败')));
        }else{
            exit(json_encode(array('code'=>0,'msg'=>'保存成功')));
        }

    }

    //删除菜单
    public function delete(){
        $mid = (int)input('post.mid');
        $res = $this->db->table('admin_menus')->where(array('mid'=>$mid))->delete();
        //判断是否删除成功
        if(!$res){
            exit(json_encode(array('code'=>1,'msg'=>'删除失败')));
        }else{
            exit(json_encode(array('code'=>0,'msg'=>'删除成功')));
        }
    }

}


Correcting teacher:查无此人Correction time:2019-05-18 09:26:26
Teacher's summary:完成的不错。后台cms管理系统,就是对数据进行操作。操作越简单越好。继续加油

Release Notes

Popular Entries