從零開始使用Laravel的圖片驗證碼
阿新 • • 發佈:2018-12-06
安裝過程就不再贅述了,大家可以參考這個連結,具體講一下怎麼使用。
有些人可能本地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發驗證碼啦 }