今天就跟大家聊聊有關(guān)使用laravel框架怎么實現(xiàn)一個后臺登錄功能,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

//登錄
public function logins(){
//post方式則為登錄操作
if(Request()->isMethod('post')){
$info = Request()->only('username','pwd');//過濾表單提交數(shù)據(jù),接受用戶名,密碼
$result = Admin::admin_login($info);//此處為調(diào)用模型,進(jìn)行驗證
//根據(jù)模型返回的結(jié)果,進(jìn)行判斷登錄狀態(tài)
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);//登錄成功,存儲當(dāng)前登錄用戶的id和用戶名
//$time--將最后登錄時間以及登錄狀態(tài)進(jìn)行更新
$time = array('last_login'=>date('Y-m-d H:i:s'),'login_status'=>1);
DB::table('sc_admin')->where('id',$user->id)->update($time);
//保存服務(wù)器信息
$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']
);
//將服務(wù)器信息入庫
DB::table('sc_webinfo')->insert($web);
$result['status']=200;
$result['message']="登錄成功";
}
}
}
}
return $result;
}登錄成功之后,一切都是基于session存在的情況下操作的,如果session信息不存在,則會返回登錄界面;
再來看看退出操作:當(dāng)前點擊"退出"之后,我們應(yīng)該執(zhí)行那些操作?
//退出登錄,清除session,返回登錄頁面
public function login_out(){
//點擊退出,將此用戶的登錄狀態(tài)改變?yōu)槲吹卿? $array=array('login_status'=>0);
DB::table('sc_admin')->where('id',Session::get('userinfo')['uid'])->update($array);
//刪除session信息
Session::forget('userinfo');
return redirect('login');
}看完上述內(nèi)容,你們對使用laravel框架怎么實現(xiàn)一個后臺登錄功能有進(jìn)一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。
本文題目:使用laravel框架怎么實現(xiàn)一個后臺登錄功能-創(chuàng)新互聯(lián)
當(dāng)前鏈接:http://chinadenli.net/article34/pdcpe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、企業(yè)建站、商城網(wǎng)站、自適應(yīng)網(wǎng)站、手機(jī)網(wǎng)站建設(shè)、搜索引擎優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容