laravel框架实现后台登录、退出功能示例
2019-10-31 18:06
1851 查看
本文实例讲述了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(empty($info['username'])){ $result['status']=205; $result['message']="请输入用户名"; }else{ if(empty($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'); }
这就是一个简单的登录,当然,后台登录的管理,我们需要进行判断身份,在这里不多说
更多关于Laravel相关内容感兴趣的读者可查看本站专题:《Laravel框架入门与进阶教程》、《php优秀开发框架总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。
您可能感兴趣的文章:
相关文章推荐
- Yii框架实现的验证码、登录及退出功能示例
- Laravel框架基于中间件实现禁止未登录用户访问页面功能示例
- TP5(thinkPHP框架)实现后台清除缓存功能示例
- Yii2框架实现登录、退出及自动登录功能的方法详解
- Django框架登录加上验证码校验实现验证功能示例
- Laravel框架实现的使用smtp发送邮件功能示例
- Laravel框架实现的使用smtp发送邮件功能示例
- Laravel框架基于ajax实现二级联动功能示例
- Laravel框架文件上传功能实现方法示例
- Laravel框架+Blob实现的多图上传功能示例
- VUE+SSM 以VUE做项目前端,SSM做后端框架,难点在于数据的传输处理,下面我记录一下一个简单的登录退出功能的实现,如果有缺陷还请大佬指出,个人菜鸟 一个,正在学习当中,以此记录一下自己的学习
- Alpaca-Laravel 框架(二) --- 集成GateWay实现WebSocket功能-聊天功能示例
- Flask框架通过Flask_login实现用户登录功能示例
- Laravel框架实现抢红包功能示例
- Laravel框架基于ajax和layer.js实现无刷新删除功能示例
- 基于Laravel5.4实现多字段登录功能方法示例
- Laravel框架实现的记录SQL日志功能示例
- Laravel框架实现的批量删除功能示例
- Laravel框架实现调用百度翻译API功能示例
- android 实现home键功能的几种方式,退到后台但不退出程序