<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. 如何實現php登陸表單提交CSRF及驗證碼

    時間:2025-10-07 15:34:25 php語言

    如何實現php登陸表單提交CSRF及驗證碼

      導語:通過下面教程的學習,大家可以掌握如何實現php登陸表單提交CSRF及驗證碼,具體詳情請閱讀以下內容,更多教程請關注應屆畢業生考試網。

      1、表單提交,并將其提交到本頁

      (1) form 屬性method為post方法,修改路由,使其接收post、get的請求

      Route::any('/admin/login','Admin\LoginController@login');

      (2)LoginController.php

      修改login方法,根據不同的請求返回不同的內容

      如果請求方法為get ,返回登陸頁面;如果請求為post,就行驗證

      use Illuminate\Support\Facades\Input;

      public function login()

      {

      if($input = Input::all()){

      dd($input);

      }else {

      return view('admin.login');

      }

      }

      刷新頁面,如果返回如下

      這是laravel csrf保護,解決:

      正確顯示:

      2、確認驗證碼是否正確

     

      (1)LoginController.php,修改login()方法

      public function login()

      {

      if($input = Input::all()){

      $code = new \Code();

      $_code = $code->get();

      if(strtoupper($input['code'])!=$_code){

      /pic/p>

      /pic/p>

      return back()->with('msg','驗證碼錯誤');

      }else{

      echo 'ok';

      }

      }else {

      return view('admin.login');

      }

      }

      (2)修改login.blade.php,獲取session

      將之前的用戶名錯誤修改為:

      @if(session('msg'))

      <p style="color:red">{{session('msg')}}</p>

      @endif

      驗證:

      問題總結:

      1、如果有需要用到session傳參的地方,路由必須寫在中間件里面

     

      比如在控制器使用back()函數的時候return back()->with('msg','驗證碼錯誤');,如果路由不是在中間件,沒有session,即使你在入口session_start(),也沒有用,又不好調試;還有就是不會產生csrf的_token

      Route::group(['middleware' => ['web']], function () {

      /pic/p>

      Route::any('/admin/login','Admin\LoginController@login');/pic/p>

      Route::get('/admin/code','Admin\LoginController@code');

      Route::get('/admin/getcode','Admin\LoginController@getcode');

      });

      2、引入第三方類的時候,如果此類文件有用到session,那么需要在入口文件session_start(),這是最簡單的解決方式了,否則會報不認識$_SESSION


    【如何實現php登陸表單提交CSRF及驗證碼】相關文章:

    如何讓php提交form表單10-22

    php如何實現驗證碼03-15

    PHP提交from表單的方法10-06

    php防止表單重復提交的方法02-24

    php提交form表單處理方法10-26

    使用php自動提交表單的方法10-29

    php實現驗證碼制作03-22

    如何真正解決表單重復提交問題php代碼01-09

    如何實現PHP獲取表單數據與HTML嵌入PHP腳本01-16

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人