laravel框架——驗證碼(第一種方法)


一、在框架根目錄下下載圖形驗證碼的組件

composer require gregwar/captcha=1.*

二、控制器代碼

use Gregwar\Captcha\CaptchaBuilder;//使用

public function admin_log()//生成驗證碼且展示的方法
    {
        $builder = new CaptchaBuilder;
        $builder->build();
        $code = $builder->inline();  //獲取圖形驗證碼的url
        session()->put('piccode', $builder->getPhrase());  //將圖形驗證碼的值寫入到session中
        return view('Bigone/admin_log',['code'=>$code]);
    }

三、視圖代碼

     <tr>
            <td>驗證碼</td>
            <td><input name="captcha" type="text" placeholder="請輸入驗證碼"></td>
            <td><img src="{{$code}}" height="36" width="80"></td>
        </tr>

四、驗證

    public function admin_login(Request $request)
    {
        $data = $request->all();
        $captcha = $data['captcha'];
        $code = session()->get('piccode');
        if($captcha == '')
        {
            echo "<script>alert('請輸入驗證碼!');</script>";
            return $this->admin_log();
            exit();
        }
        elseif($captcha!=$code)
        {
            echo "<script>alert('驗證碼錯誤!');</script>";
            return $this->admin_log();
            exit();
        }
        else
        {
            $user_pass = md5($data['user_pass']);
            $res = DB::select("select * from pzq_sysuser where user_name = '{$data['user_name']}' and user_pass = '$user_pass'");
            if($res)
            {
                echo "<script>alert('登陸成功!');</script>";
                return $this->index_show();
            }
            else
            {
                echo "<script>alert('登陸失敗,請檢查用戶名和密碼!');</script>";
                return $this->admin_log();
            }
        }
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM