做一个后台登录身份验证,并验证管理员是否登录,已登录可以进行下一步操作,未登录则跳转回登录页面!
创建 admin 表用于存放后台管理员,要实现管理员的单独登录
表结构:
CREATE TABLE `admin` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增id',
`name` varchar(100) DEFAULT NULL COMMENT '账号名称',
`password` varchar(100) DEFAULT NULL COMMENT '密码',
`addtime` int(11) DEFAULT NULL COMMENT '添加时间',
`remember_token` varchar(100) DEFAULT NULL COMMENT 'auth认证使用的令牌',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='管理员表';
配置 config/auth.php 配置文件:


创建Admin.php
在app下创建Admin.php文件
配置与app/User.php基本相同

视图文件
Login.blade.php文件内容

web.php路由文件
//登录
Route::match(['POST', 'GET'], '/admin/login', 'AdminLoginController@login');
控制器登录方法

模型层登录逻辑处理 使用其中被注释的方法添加测试用的管理员账号密码

web.php退出路由
//退出
Route::get('Logout', 'AdminLoginController@logout');
控制器退出方法

模型层退出业务处理

Auth退出,并清除掉自己设置的session
到这里,Auth登录、退出已经完成了!
下一步就是操作其他方法的时候验证是否登录的操作了
增加中间件验证
App/Http/Middleware/RedirectIfAuthenticated.php

修改app/Http/Kernel.php 增加中间件验证 在请求控制器之前首先验证中间件

路由 修改 web.php

未登录,如果访问,则跳转回login

已登录显示 可以调用退出方法

本文详细介绍了一个后台管理系统中管理员登录验证的实现过程,包括数据库表结构设计、登录与退出的路由及控制器方法,以及如何通过中间件验证登录状态,确保只有已登录的管理员才能访问特定功能。
3266

被折叠的 条评论
为什么被折叠?



