首頁 > php框架 > Laravel > 主體

【laravel】blog專案實戰筆記-登入的操作及後台首頁的創建

演明
發布: 2021-09-09 09:05:27
原創
1297 人瀏覽過

  總想自己一個人做一個小的項目,但是不知道怎麼著手,平時上班時總是做項目中某個部分的任務,沒有整體做一個項目,下面是我看php中文網的視頻整理的筆記,供大家參考。這是在Windows環境下做的blog實戰專案。

一、後台登入驗證碼Crypt加密與解密

#1)先分配個路由(測試)

2)建立個crypt方法

用Crypt::encrypted();加密密碼

$str = '123456';
$str_p='eyJpdiI6IkRKNlZsU2k3OWhtTkxTUTFObWdpaVE9PSIsInZhbHVlIjoiUUVhRTFqd0YwQk1TeDVMU3RuenBodz09IiwibWFjIjoiOTZjZDZlMTJjZmY1NTQwYjA4ZTBiYzhiODVhMjk0NDAxNzI4ZDNlNjM4OWIyYzhkZTIyNmZhMDgxYWE4OWFkMyJ9';
echo Crypt::encrypt($str);  //加密
echo &#39;<br/>&#39;;
echo Crypt::decrypt($str_p);    //解密
登入後複製

3)判斷使用者名稱密碼是否正確

$user =BlogUserModel::first();
if($user->user_name !=$input[&#39;user_name&#39;] || Crypt::decrypt($user->pass_word) != $input[&#39;pass_word&#39;]){
return back()-> with(&#39;msg&#39;,&#39;用户名或密码错误!&#39;);
}
登入後複製

4)如果使用者名稱和密碼正確就把資訊儲存到session裡

session([&#39;user&#39;=>$user]);  //将数据存储到session里
dd(session(&#39;user&#39;));
登入後複製

二、後台首頁,歡迎頁面,以及子視圖的佈局

1)內容一樣的,放到layouts 資料夾的common

#把玻璃內容放到子視圖了,在玻璃內容的部分@yield('content')

#2)在子視圖裡引用模板檔案

@extends(home.layouts.common)
@section(&#39;content&#39;)
登入後複製

這個是子視圖的玻璃內容

@endsection
登入後複製

3)登入成功後轉到後台首頁

return redirect() //表示调转每个页面
登入後複製

4)引用調轉頁面位址

{{URL::asset(&#39;/home/index&#39;)}}
登入後複製

5)css和js的引入

{{URL::asset(&#39;/css/style.css&#39;)}}
登入後複製

三、後台管理員登入中間件的設定與登出登入

1)登入這個路由 (不用放到判斷是否登入的群組裡)

route::group();
route::group([],function(){
});
route::group([&#39;middleware&#39;=>[&#39;web&#39;,&#39;admin.login&#39;]],function(){
});
登入後複製

2)在kernel.php

'admin.login' => \App\Http\Middleware\AdminLogin::class  註冊個中間件

3)用PHP artisan建立中間件

 php artisan make:middleware AdminLogin
登入後複製

4)之間登入成功後把資訊放到session裡,這是我們就在中間件裡取值看有沒有值,

    if(session(&#39;user&#39;)==null){
           return redirect(&#39;home/login&#39;);
       }
登入後複製

5)註銷中間件

分配個理由

public function quit(){
       session([&#39;user&#39;=>null]);
       return redirect(&#39;home/login&#39;);
   }
登入後複製

6)看這個路由不只前綴,還有前綴和命名空間

Route::group([&#39;middleware&#39;=>[&#39;web&#39;,&#39;admin.login&#39;]],function(){
                   Route::any(&#39;home/quit&#39;,&#39;Home\LoginController@quit&#39;);
                   Route::any(&#39;home/index&#39;,&#39;Home\IndexController@index&#39;);
                   Route::any(&#39;home/article&#39;,&#39;Home\IndexController@article&#39;);
               });
登入後複製

以下是對上面做的最佳化

Route::group([&#39;middleware&#39;=>[&#39;web&#39;,&#39;admin.login&#39;]],&#39;prefix&#39;=>&#39;admin&#39;, &#39;namespace&#39; =>&#39;Admin&#39;,function(){
                   Route::any(&#39;quit&#39;,&#39;LoginController@quit&#39;);
                   Route::any(&#39;index&#39;,&#39;IndexController@index&#39;);
                   Route::any(&#39;article&#39;,&#39;IndexController@article&#39;);
               });
登入後複製

以上步驟是我學習的筆記,我把要操作的步驟或重點的內容記了下來,如果哪有不懂可以留言。謝謝大家支持我。希望能為小白提供幫助,如果想看更多blog項目信息,關注我,我會給大家分享更多的內容。

相關推薦:《laravel教學

以上是【laravel】blog專案實戰筆記-登入的操作及後台首頁的創建的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板