PHP删除菜单,菜单的编辑、删除功能

摘要:Menu.php菜单控制器代码:<?php

namespace app\admins\controller;

use app\admins\controller\Base;

use Util\SysDb;

class Menu extends Base

{

public function index()

Menu.php菜单控制器代码:<?php

namespace app\admins\controller;

use app\admins\controller\Base;

use Util\SysDb;

class Menu extends Base

{

public function index()

{

$pid = (int)input('get.pid');

$where['pid'] = $pid;

//加载菜单列表

$data['lists'] = $this->db->table('admin_menu')->where($where)->order('ord asc')->lists();

$data['pid'] = $pid;

//子菜单

if($pid>0){

$parent = $this->db->table('admin_menu')->where(['mid'=>$pid])->item();

$data['backid'] = $parent['pid'];

}

return $this->fetch('',$data);

}

public function add()

{

$pid = (int)input('get.pid');

$mid = (int)input('get.mid');

$data['parent_menu'] = $this->db->table('admin_menu')->where(['mid'=>$pid])->item();

$data['menu'] = $this->db->table('admin_menu')->where(['mid'=>$mid])->item();

return $this->fetch('',$data);

}

public function edit()

{

$pid = (int)input('get.pid');

$mid = (int)input('get.mid');

$data['parent_menu'] = $this->db->table('admin_menu')->where(['mid'=>$pid])->item();

$data['menu'] = $this->db->table('admin_menu')->where(['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'));

$daat['ord'] = (int)input('post.ord');

$data['ishidden'] = (int)input('post.ishidden');

$data['status'] = (int)input('post.status');

if($data['title']==''){

exit(json_encode(['code'=>1,'msg'=>'菜单名称不能为空']));

}

if($data['controller']==''){

exit(json_encode(['code'=>1,'msg'=>'控制器不能为空']));

}

if($data['method']==''){

exit(json_encode(['code'=>1,'msg'=>'控制器不能为空']));

}

$res = $this->db->table('admin_menu')->insert($data);

if(!$res){

exit(json_encode(['code'=>1,'msg'=>'保存失败']));

}

exit(json_encode(['code'=>0,'msg'=>'保存成功']));

}

public function doedit()

{

$data['mid'] = (int)input('post.mid');

$data['pid'] = (int)input('post.pid') ? (int)input('post.pid') : 0;

$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(['code'=>1,'msg'=>'菜单名称不能为空']));

}

if($data['controller']==''){

exit(json_encode(['code'=>1,'msg'=>'控制器不能为空']));

}

if($data['method']==''){

exit(json_encode(['code'=>1,'msg'=>'控制器不能为空']));

}

$res = $this->db->table('admin_menu')->where(['mid'=>$data['mid']])->update($data);

if(!$res){

exit(json_encode(['code'=>1,'msg'=>'保存失败']));

}

exit(json_encode(['code'=>0,'msg'=>'保存成功']));

}

public function del()

{

$mid = (int)input('post.mid');

$res = $this->db->table('admin_menu')->where(['mid'=>$mid])->delete();

if(!$res){

exit(json_encode(['code'=>1,'msg'=>'删除失败']));

}

exit(json_encode(['code'=>0,'msg'=>'删除成功']));

}

}

菜单列表index.html模板代码:html>

Document

.header span{

background: #009688;

margin-left: 30px;

padding: 10px;

color: #ffffff;

}

.header button{

float: right;

margin-top: -5px;

}

.header div{

border-bottom: 2px solid #009688;

margin-top: 8px;

}

菜单列表

添加

<?php  if($pid>0){?>

返回上级菜单

ID排序菜单名称控制器方法是否隐藏状态操作

{volist name='$lists' id="vo"}

{$vo.mid}{$vo.ord}{$vo.title}{$vo.controller}{$vo.method}{$vo.ishidden==1?'隐藏':'显示'}{$vo.status==0?'正常':' 禁用'}

子菜单

编辑

删除

{/volist}

layui.use('layer',function(){

var layer = layui.layer;

$ = layui.jquery;

});

//添加

function add(){

var pid = $('#pid').val();

layer.open({

type:2,

title:'添加菜单',

shade:0.3,

area:['480px','420px'],

content:'/index.php/admins/menu/add?pid='+pid

});

}

//编辑

function edit(mid){

var pid = $('#pid').val();

layer.open({

type:2,

title:'编辑菜单',

shade:0.3,

area:['480px','420px'],

content:'/index.php/admins/menu/edit?pid='+pid+'&mid='+mid

});

}

//删除

function del(mid)

{

layer.confirm('确认要删除吗?',{

icon:3,

btn:['确定','取消']

},function(){

$.post('/index.php/admins/menu/del',{'mid':mid},function(res){

if(res.code>0){

layer.alert(res.msg,{'icon':2});

}else{

layer.msg(res.msg,{'icon':1});

setTimeout(function(){

window.location.reload();

},1000)

}

},'json');

});

}

//子菜单

function childs(mid){

window.location.href = '?pid='+mid;

}

//返回上级菜单

function backs(pid){

window.location.href = '?pid='+pid;

}

添加菜单add.html模板代码:html>

Document

上级菜单

菜单名称

排序

控制器

方法

状态

保存

layui.use(['layer','form'],function(){

layer = layui.layer;

form = layui.form;

$ = layui.jquery;

});

function save(){

var title = $.trim($('input[name="title"]').val());

var controller = $.trim($('input[name="controller"]').val());

var method = $.trim($('input[name="method"]').val());

if(title==''){

layer.alert('请输入菜单名称',{'icon':2});

return;

}

if(controller==''){

layer.alert('请输入控制器',{'icon':2});

return;

}

if(method==''){

layer.alert('请输入方法',{'icon':2});

}

$.post('/index.php/admins/menu/save',$('form').serialize(),function(res){

if(res.code>0){

layer.alert(res.msg,{'icon':2});

}else{

layer.msg(res.msg,{'icon':1});

setTimeout(function(){

parent.window.location.reload();

},1000)

}

},'json');

}

编辑菜单edit.html模板代码:html>

Document

上级菜单

菜单名称

排序

控制器

方法

状态

保存

layui.use(['layer','form'],function(){

layer = layui.layer;

form = layui.form;

$ = layui.jquery;

});

function doedit(){

var title = $.trim($('input[name="title"]').val());

var controller = $.trim($('input[name="controller"]').val());

var method = $.trim($('input[name="method"]').val());

if(title==''){

layer.alert('请输入菜单名称',{'icon':2});

return;

}

if(controller==''){

layer.alert('请输入控制器',{'icon':2});

return;

}

if(method==''){

layer.alert('请输入方法',{'icon':2});

}

$.post('/index.php/admins/menu/doedit',$('form').serialize(),function(res){

if(res.code>0){

layer.alert(res.msg,{'icon':2});

}else{

layer.msg(res.msg,{'icon':1});

setTimeout(function(){

parent.window.location.reload();

},1000)

}

},'json');

}

批改老师:欧阳批改时间:2019-03-22 17:29:39

老师总结:完成的不错。下次代码复制不完,可以截图上传图片。继续加油。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值