1. 程式人生 > >從零開始使用Laravel的圖片驗證碼

從零開始使用Laravel的圖片驗證碼

安裝過程就不再贅述了,大家可以參考這個連結,具體講一下怎麼使用。

有些人可能本地OK,放到伺服器上就不行了,那是因為伺服器上沒有安裝GD庫或者Fileinfo擴充套件,檢視phpinfo,你需要看到這兩個表格才行





下面我們以傳送簡訊需要輸入圖片驗證碼來作為例子:

在html頁面裡,這樣用,還可以重新整理驗證碼哦:

<img src="{{ url('/captcha') }}" onclick="this.src='{{ url('/captcha') }}?r='+Math.random();" alt=""> 
<input type="text" name="captcha" id='captcha'  placeholder="請輸入圖片驗證碼,點選圖片重新整理">
<button onclick="getCode(this);" type='button'>獲取簡訊</button>


然後javascript:

	function getCode(thisBtn){
		
	    var me = thisBtn;
	    var mobile = "xxxx"; //這裡填你獲取的手機號
	    var captcha = $('#captcha').val();
	    $.get("/sendMessage",{mobile:mobile,captcha:captcha},function(data){
	    	if(data.status == 1){
	    			alert(data.msg);
	    		
	    		}else{
	    			alert(data.msg);
	    		}
		});
		
	}

Ajax後端驗證,具體給手機發簡訊的方法就不再贅述了,因為大家用的發簡訊的方式不一樣:

    //傳送簡訊
    public function sendMessage(){
        $mobile = Input::get('mobile');
        $rules = ['captcha' => 'required|captcha'];
        $validator = Validator::make(Input::all(), $rules);
        if ($validator->fails()){ //圖片驗證碼輸錯了
            return response()->json(['status'=>0,'msg'=>"請輸入圖片裡的驗證碼來獲取簡訊。"]);
        }
        //通過驗證。接下來就給mobile發驗證碼啦
 }