laravel框架实现后台登录、退出功能示例
发布:smiling 来源: PHP粉丝网 添加日期:2022-01-19 10:47:12 浏览: 评论:0
这篇文章主要介绍了laravel框架实现后台登录、退出功能,结合实例形式详细分析了Laravel框架后台登录、退出相关的请求发送、验证、session读写与删除等相关操作技巧,需要的朋友可以参考下。
本文实例讲述了laravel框架实现后台登录、退出功能,分享给大家供大家参考,具体如下:
我们在写后台管理系统时,登录,退出是避免不了的,那我们如何使用laravel实现呢?
首先,我们来看看登录如何实现?
- //登录
 - public function logins(){
 - //post方式则为登录操作
 - if(Request()->isMethod('post')){
 - $info = Request()->only('username','pwd');//过滤表单提交数据,接受用户名,密码
 - $result = Admin::admin_login($info);//此处为调用模型,进行验证
 - //根据模型返回的结果,进行判断登录状态
 - if($result['status']==200){
 - return redirect('index')->with('id',Session::get('userinfo')['uid']);
 - }elseif($result['status']==205){
 - return redirect('login')->with('msg',$result['message']);
 - }elseif($result['status']==203){
 - return redirect('login')->with('msg',$result['message']);
 - }else{
 - return redirect('login');
 - }
 - }elseif(Request()->isMethod('get')){//如果请求方式为get方式,说明为登录页面
 - return view('CloudAdmin/login');
 - }
 - }
 
接下来,我们看模型的一些操作
- //登录操作判断
 - public static function admin_login($info){
 - if(emptyempty($info['username'])){
 - $result['status']=205;
 - $result['message']="请输入用户名";
 - }else{
 - if(emptyempty($info['pwd'])){
 - $result['status']=205;
 - $result['message']='请输入密码';
 - }else{
 - $user = DB::table('sc_admin')->where('username',$info['username'])->first();
 - if(!$user){
 - $result['status']=202;
 - $result['message']="用户不存在";
 - }else{
 - if(md5($info['pwd'])!=$user->password){
 - $result['status']=203;
 - $result['message']="密码错误";
 - }else{
 - $userinfo = array('uid'=>$user->id,'username'=>$user->username);
 - Session::put('userinfo',$userinfo);//登录成功,存储当前登录用户的id和用户名
 - //$time--将最后登录时间以及登录状态进行更新
 - $time = array('last_login'=>date('Y-m-d H:i:s'),'login_status'=>1);
 - DB::table('sc_admin')->where('id',$user->id)->update($time);
 - //保存服务器信息
 - $web = array(
 - 'IP' => $_SERVER['REMOTE_ADDR'],
 - 'login_time' => date('Y-m-d H:i:s',$_SERVER['REQUEST_TIME']),
 - 'webserver' => $_SERVER['SERVER_SOFTWARE'],
 - 'admin'=>Session::get('userinfo')['username']
 - );
 - //将服务器信息入库
 - DB::table('sc_webinfo')->insert($web);
 - $result['status']=200;
 - $result['message']="登录成功";
 - }
 - }
 - }
 - }
 - return $result;
 - }
 
登录成功之后,一切都是基于session存在的情况下操作的,如果session信息不存在,则会返回登录界面;
再来看看退出操作:当前点击"退出"之后,我们应该执行那些操作?
- //退出登录,清除session,返回登录页面
 - public function login_out(){
 - //点击退出,将此用户的登录状态改变为未登录
 - $array=array('login_status'=>0);
 - DB::table('sc_admin')->where('id',Session::get('userinfo')['uid'])->update($array);
 - //删除session信息
 - Session::forget('userinfo');
 - return redirect('login');
 - }
 
这就是一个简单的登录,当然,后台登录的管理,我们需要进行判断身份,在这里不多说。
Tags: laravel后台登录 laravel退出
- 上一篇:laravel 框架实现无限级分类的方法示例
 - 下一篇:最后一页
 
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
 - PHP新手上路(一)(7)
 - 惹恼程序员的十件事(5)
 - PHP邮件发送例子,已测试成功(5)
 - 致初学者:PHP比ASP优秀的七个理由(4)
 - PHP会被淘汰吗?(4)
 - PHP新手上路(四)(4)
 - 如何去学习PHP?(2)
 - 简单入门级php分页代码(2)
 - php中邮箱email 电话等格式的验证(2)
 
