# :-: 加載首頁代碼
~~~
//用戶列表展示
public function index(){
$users = \app\admin\model\Users::all();
static $roles=[] ;
foreach( $users as $v){
$v['role_id'] =explode(',',$v['role_id']);
}
//循環數據頁面展示效果
foreach($users as $v) {
foreach($v['role_id'] as $c){
$roles[] = \app\admin\model\Role::where('id',$c)->find();
}
}
return view('',compact('users','roles'));
}
~~~

# :-: Html 代碼
~~~
{include file='common/father_css'/}
<body class="gray-bg">
<div class="wrapper wrapper-content animated fadeInRight">
<div class="row">
<div class="col-sm-12">
<div class="ibox float-e-margins">
<div class="ibox-title">
<h5>所有欄目</h5>
</div>
<div class="ibox-content">
<div class="table-responsive">
<form name="myform" id="myform" method="post">
<table class="table table-striped">
<thead>
<tr>
<th>id</th>
<th>賬號</th>
<th>是否是管理員</th>
<th>權限列表</th>
<th>操作</th>
</tr>
</thead>
<tbody>
{foreach $users as $v}
<tr>
<td>
{$v['id']}
</td>
<td>
{$v.usename}
</td>
<td >
{eq name='$v->is_admin' value='1'}管理員{/eq}
{eq name='$v->is_admin' value='0'}普通會員{/eq}
</td>
<td>
{foreach $roles as $c}
<span class="text-danger">{$c->role_name},</span>
{/foreach}
</td>
<td>
<div class="layui-table-cell laytable-cell-1-0-10">
<a class="layui-btn layui-btn-xs" lay-event="edit" href="{:url('admin/admin/member',['id'=>$v['id']])}">編輯</a>
<a class="layui-btn layui-btn-xs" lay-event="edit" href="{:url('admin/users/add',['id'=>$v['id']])}">設置權限 </a>
{eq name='$v->id' value='session('uid')'}
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del" onclick="del({$v.id})">刪除</a>
<a class="layui-btn layui-btn-xs" lay-event="edit" href="{:url('admin/users/add',['id'=>$v['id']])}">設置權限 </a>
{/eq}
</div>
</td>
</tr>
{/foreach}
</tbody>
</table>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- 全局js -->
<script>
function del(id) {
swal({
title: "確定刪除嗎?",
text: "你將無法回復該用戶,點擊空白區,取消選框",
type: "warning",
showCancelButton: true,
confirmButtonColor: "#DD6B55",
confirmButtonText: "確定刪除!",
cancelButtonText: "取消刪除!",
closeOnConfirm: false,
closeOnCancel: false
}).then(
function(isConfirm){
if (isConfirm) {
//或者id ,傳遞給后臺
window.location.href = "/admin/friendly/delete/id/"+id
} else {
swal("取消!", "你的權限刪除結束)",
"error");
}
});
}
</script>
</body>
</html>
~~~
# :-: 添加權限代碼
~~~
//用戶添加角色
public function add(Request $request){
$id = $request->param('id');
$roles = \app\admin\model\Role::all();
return view('',compact('roles','id'));
}
//用戶添加角色修改
public function addSave(Request $request){
$data = $request->param();
$id = $request->param('id');
$data['role_id'] = implode(',',$data['role_id']);
unset($data['id']);
$info = Db::table('user')->where('id',$id)->data($data)->update();
if ($info){
$this->success('角色添加成功','/admin/users/index');
}
}
~~~
# :-: Html 代碼
~~~
{include file='common/father_css'/}
<body class="gray-bg">
<div class="wrapper wrapper-content animated fadeInRight">
<div class="row">
<div class="col-sm-12">
<div class="ibox float-e-margins">
<div class="ibox-title">
<h5 class="text-danger">選擇角色</h5>
</div>
<div class="ibox-content">
<div class="table-responsive">
<form method="post" class="form-horizontal layui-form"
action="{:url('admin/users/addSave')}">
<input type="hidden" name="id" value="{$id}">
<div class="layui-form-item">
<div class="layui-input-block">
{foreach $roles as $role}
<input type="checkbox" name="role_id[]" title="{$role.role_name}" value="{$role.id}" >
{/foreach}
</div>
</div>
<div class="hr-line-dashed"></div>
<div class="col-sm-12 text-center">
<button class="btn-sm btn-danger layui-btn-radius" type="submit">保存角色</button>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- 全局js -->
<script>
layui.use(['form', 'layedit', 'laydate'], function(){
var form = layui.form
,layer = layui.layer
,layedit = layui.layedit
,laydate = layui.laydate;
//日期
laydate.render({
elem: '#date'
});
laydate.render({
elem: '#date1'
});
//創建一個編輯器
var editIndex = layedit.build('LAY_demo_editor');
//自定義驗證規則
form.verify({
title: function(value){
if(value.length < 5){
return '標題至少得5個字符啊';
}
}
,pass: [
/^[\S]{6,12}$/
,'密碼必須6到12位,且不能出現空格'
]
,content: function(value){
layedit.sync(editIndex);
}
});
//監聽指定開關
form.on('switch(switchTest)', function(data){
layer.msg('開關checked:'+ (this.checked ? 'true' : 'false'), {
offset: '6px'
});
layer.tips('溫馨提示:請注意開關狀態的文字可以隨意定義,而不僅僅是ON|OFF', data.othis)
});
//監聽提交
form.on('submit(demo1)', function(data){
layer.alert(JSON.stringify(data.field), {
title: '最終的提交信息'
})
return false;
});
//表單初始賦值
form.val('example', {
"username": "賢心" // "name": "value"
,"password": "123456"
,"interest": 1
,"like[write]": true //復選框選中狀態
,"close": true //開關狀態
,"sex": "女"
,"desc": "我愛 layui"
}
});
</script>
</body>
</html>
~~~

- Tp 框架5.1安裝
- Tp 資源控制器創建跟非資源控制器
- Tp 自定義目錄
- Tp 鏈接傳參,地址欄獲取參數
- Tp ajax 異步提交數據
- Tp 模型里面指定開啟時間戳
- Tp加載驗證碼
- Tp 模版
- Tp 模版繼承
- Tp模版頁面If 條件 及session存儲 取出
- Tp 默認在模版頁面指定內容
- Tp 模版頁面獲取session
- Tp驗證器
- Tp 自定義驗證
- Thinkphp 模型驗證規則使用
- Tp 文件上傳
- Tp 實現注冊自動登錄
- Tp 編輯器
- Tp 結合 Markdown里面的editor編輯器
- Tp Marckdown 編輯模版輸出
- Tp 搜索功能
- Tp 點贊 收藏
- Tp 基本權限
- Tp 創建驗證器
- Sweetalert 彈出框 引用
- Tp 網站 開啟 關閉功能
- Tp 網站 開啟 注冊功能
- Tq QQ登錄
- Tp 郵箱注冊 驗證
- Tp 無限極分類
- Tp 路由
- Tp RBAC權限 適合于任何框架
- 創建權限模型,控制器,驗證規則
- 創建角色 控制器 模型 驗證規則
- 用戶角色設置
- 權限驗證
- Tp auth 權限
- 第一部 auth 安裝
- 第二部 創建 三張數據庫
- 第三部 創建用戶控制器
- 第四部 創建規則表
- 規則表基本操作
- 1 規則頁面加載
- 2 添加規則
- 3 編輯規則
- 4 刪除規則
- 第五部 創建用戶組
- 用戶組基本操作
- 第一步 展示用戶組首頁
- 第二步 添加用戶組
- 第三步 編輯用戶組
- 第四部 刪除用戶組
- 第六步設置權限
- 第一步 創建 模型 控制器
- 第二步 首頁顯示
- 第三部 設置用戶權限
- 第七步 執行權限認證
- 備注 附加規則原理
- Tp 數據庫
- 外鍵約束
- Tp 結合layui 上傳
- Layui 編輯器 前端展示
- Tp 模版eq
- Tp 刪除
- Tp session 處理
- Tp cache緩存方法
- Tp 后臺驗證管理員登錄
- 前臺Nav 導航
- 左邊導航
- Tp 批量刪除
- O2O
- Tp框架插入數據自帶時間戳
- Tp 結合layui 分頁
- Tp 整合百度地圖
- Tp 結合城市三級聯動
- 密碼驗證
- 團購時間
- Tp模板時間修改
- 安卓App 平臺入駐上線
- Api 接口返回
- Thinkphp 生成5.1二維碼
- 回調Api
- layui 關閉框 刷新
- Layui 監聽
- 判斷是否是pc端 手機端
- Lauyi 自動轉換時間
- Tp 增加時間
- ajax 同步 異步處理
- 彈出框
- 傳輸數據編輯
- 上傳 引用 uploadify
- js 收縮
- Tp 增加數據表
- Tp-前置鉤子
- 刪除代碼
- 適合tp5.0描述文字過長
- php 三級城市城市表帶數據
- layu結合 tp table數據數組循環
- layui 解決數據為NUll 錯誤代碼