PHP:【商城后台管理系统】admin超级管理员后台操作界面部署{无限级菜单}

PHP:【商城后台管理系统】admin超级管理员后台操作界面部署{无限级菜单}
一.超级管理员后台操作界面


二.部署流程

  1. 界面部署流程
  • 页眉栏:采用layui 50px 经典蓝 自设置用户信息Session 进行输出用户名称和用户级别

  • 左侧导航栏{无限级菜单} :采用layui 手风琴和左侧导航框架进行样式设计,通过连接后台数据库导出数据表中数据渲染导航列表,分为一级菜单和二级菜单

  • 主操作区:采用传统 iframe 内联框架进行部署

  • 主操作区高度设置:采用css position 定位以及页眉和左部导航还有页面高度进行计算部署

    HTML 代码块

<?php

use think\facade\Session;
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>后台管理系统</title>
    <link rel="stylesheet" href="/static/layui-v2.6.8/layui/css/layui.css" />
    <script src="/static/layui-v2.6.8/layui/layui.js"></script>
    <style>
        :root,.layui-colla-content{
            padding: 0;
            margin: 0;
            box-sizing: border-box;
        }
        a{
            text-decoration: none;
            
        }
        .main-menus{
            width: 200px;
            height: calc(100% - 50px);
            position:absolute;
            background:  2F4056;
           
        }
        .layui-colla-title,
        .layui-colla-content,
        .layui-collapse,
        .layui-colla-content, 
        .layui-colla-item{
            border: none;
        }
        .main-form{
            position: absolute;
            left: 200px;
            right: 0;
           
        }
        
    </style>
</head>
<body>
    <!-- 头部导航 -->
    <div  class="layui-box" style="background:  1E9FFF;height:50px;line-height:50px;color:azure">
        <div class="layui-box">
           <span style="margin-left:20px;font-size:1.2rem;color:azure">admin后台管理系统</span> 
           <span style="float: right;">
           <i class="layui-icon layui-icon-username"></i>
           {$data['admin']['username']}
           <span>{$data['group']['title']=='' ?'【管理员】': $data['group']['title']}</span>
           <a style="margin: 0 8px;color:azure" href="javascript:;" onclick="otuLogin()">退出登录</a>
           </span>
        </div>
    </div>
     <!-- 侧边导航 -->
     <div class="main-menus">
        <div class="layui-collapse layui-bg-cyan " lay-accordion>
            {foreach($data['menuList'] as $menuKey => $menu)}
            <div class="layui-colla-item layui-bg-cyan">
                <h2 class="layui-colla-title layui-bg-cyan">{$menu['title']}</h2>
                <div class="layui-colla-content {$menuKey == 0 ? 'layui-show' :''}" >
                
                <ul class="layui-nav layui-nav-tree layui-bg-cyan" lay-filter="test">
                    {foreach($menu['children'] as $chd)}
                    <li class="layui-nav-item"><a href="javascript:;">{$chd['title']}</a></li>
                    {/foreach}
                </ul>
               
                </div>
            </div>
            {/foreach}
        </div>
     </div>
      <!-- 主操作区 -->
      <div class="main-form">
        <iframe src="/admin/Home/main_form" frameborder="0" onload="setHeight(this)" style="height: 100%; width: 100%;">
            
        </iframe>
      </div>
      
    

</body>
</html>
<script>
    $ = layui.jquery;
    
    //设置iframe 高度
    function setHeight(obj) {
        let height = document.documentElement.clientHeight - 50;
        $(obj).parent('div').height(height);
    }

    //退出登录
    function otuLogin() {
        let date = {};
        $.post('/admin/Home/otuLogin',date,function(res) {
                if (res.id == 1) {
                    layer.alert(res.msg,{icon:1});
                    setTimeout(() => {
                        window.location.href = '/admin/Account/login';
                        
                    }, 1500);
                }else{
                    layer.alert(res.msg,{icon:2});
                }
        },"json")
        
    }
</script>
PHP 代码块

<?php
namespace app\admin\controller;
use app\BaseController;
use think\facade\Request;
use think\facade\Db;
use think\facade\View;
use think\facade\Session;
/**
 * admin后台界面管理
 */
class Home extends BaseController
{
    //后台界面管理
    public function index()
    {   
        //用户信息
        $data['admin'] = Session::get('admin');
        //用户角色
        $data['group'] = Db::table('admin_group')->where('id',$data['admin']['gid'])->find();
        
        //一级菜单
        $data['menuList'] = Db::table('admin_menu')->where('pid',0)->select()->toArray();
       
        //二级菜单
        $menuList2 = Db::table('admin_menu')->where('pid','>',0)->select()->toArray();
        foreach ($data['menuList'] as $key => $menu) {
            $data['menuList'][$key]['children']  = [];
            foreach ($menuList2 as  $chd) {
                if ($chd['pid'] == $menu['mid']) {
                    $data['menuList'][$key]['children'][] = $chd;
                }
            }
        }

        // print_r($data['menuList']);
        // exit;

        View::assign([
            'data'=>$data 
        ]);
        return View::fetch('/home/index');
    }

    //后台主操作区域
    public function main_form()
    {   
        $admin = Session::get('admin');
        View::assign([
            'username' => $admin,
        ]);
        return View::fetch("/home/main_form");
    }

    //退出登录
    public function otuLogin()
    {   
        if (!Session::delete('admin')) {
           echo json_encode(['id' => 1,'msg' => '退出登录成功']);
        }else {
            echo json_encode(['id' => 0,'msg' => '再次点击退出登录']);
        }
        
    }
}
thinkPHP开发的后台管理系统 主要针对PHP入门级程序员开发适用,主要特点集成了AUTH多对多权限管理控制, 比较细分明确了 权限控制=》权限节点 、角色=》角色权限、管理员=》角色 的管理结构。 后台布局主要应用了Layuid的简明小清新,还支持5种风格切换、全屏浏览、锁屏等炫酷功能。 相信AndPHP.admin 能让你的后台开发也能舒爽起来,另外补充一点,对于目前大多的共享后台都集成封装了如表单、 列表等主要构件方法,说是为了方便快速布置后台,当对于入门来说,学习成本也是有的,阅读性也有牺牲,仁者见仁吧, 就是想告诉大家AndPHP.admin没有这样做,主要好处,多查阅ThinkPHP5.1及Layui2.x文档根据已有文件基本就能活学应用啦!! ( 打脸了,admin2.0对于FORM\LIST进行了方法集成,但保留了1.0的部分硬编输出,你可以更好的应对,快速的开发!) //============= AndPHP内容管理系统基于ThinkPHP、结合Layui等优秀开源项目开发; 将包含系统设置,权限管理,模型管理,数据库管理,栏目管理,会员管理,网站功能,模版管理,微信管理等相关模块。 官网在线演示: http://andphp.com 测试账号:test 测试密码:123456 admin2.0纯净版发布了 ThinkPHP核心框架更新至5.1.12, 精简后台功能模块,极简方便开发者 =)基于后台管理员登录/AUTH权限管理/系统配置及后台FORM、LIST公共方法 =)基于前台用户登录/AUTH权限管理/会员中心(集成积分管理、签到等)基本用户操作属性 =) 集成一键安装,localhost/install/index.php 轻度强迫症的我对代码规范有这一定的要求,所以一定程度上做好了备注标示,目前文档整理中,有问题请进QQ群交流学习! About, AndPHP采用ThinkPHP5.15开发,ThinkPHP5.15采用全新的目录结构、架构思想,引入了 很多 的PHP新特性,优化了核心,减少了依赖,实现了真正的惰性加载。 正因为ThinkPHP的 这些新特性, 从而使得ANDPHP的执行速度成倍提高。 UI方面,AndPHP采用了最受欢迎的Layui,Layui用于开发响应式布局、移动设备优先的 WEB 项目。 简洁、直观、强悍的前端开发框架,让ANDPHP后台界面更加美观,前台布局 更加爽快,开发更迅速、简单。 Tell U, 我们的目标:致力于为个人和中小型企业打造全方位的PHP企业级开发解决方案。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值