PHP實現字母數字混合驗證碼

一款簡單的PHP實現字母數字混合驗證碼,支持自定義驗證碼、驗證碼圖片、寬度、高度、個數、背景圖片等
php

驗證碼調用地址:Application\Home\Controller\CodeController.class.phphtml

1 Vendor('Vcode.Vcode', '', '.class.php'); 
2 $config = array("width" => 100, "height" => 36, "count" => 4, "str" => 2); //配置 
3 $vcode = new \Vcode($config); 
4 $vcode->getCode(); //獲取驗證碼 
5 $vcode->getImg(); //輸出圖片 
6 exit;

 

驗證碼圖片json

1 <img src="__APP__/code/" id="code" onclick="changeCode($('#code'))"/>

 

JS經過後綴加隨機數Math.random()來刷新驗證碼session

1 function changeCode(obj) { 
2    obj.attr("src", '__APP__/code/?' + Math.random()); 
3 }

 

檢測驗證碼是否輸入正確dom

 1 <input type="text" id="input_code" class="input"/> 
 2 <input type="button" value="提交" class="btn" onclick="checkCode()"/>
 3 function checkCode() { 
 4     $.post("__APP__/Code/check", {code: $("#input_code").val()}, function(data) { 
 5         if (data == '1') { 
 6             alert("驗證碼正確!"); 
 7         } else { 
 8             alert("驗證碼錯誤!"); 
 9         } 
10     }, "json") 
11 }

 

PHP驗證傳過來的參數code和當前session存儲的驗證碼進行比較,如果正確返回1,錯誤則-1post

1 public function check() { 
2         $code = I('post.code'); 
3         if (strtolower($code) == $_SESSION["sucaihuo_code"]) { 
4             echo "1"; 
5         } else { 
6             echo "-1"; 
7         } 
8 }

 

本文轉自:https://www.sucaihuo.com/php/533.html 轉載請註明出處!spa

相關文章
相關標籤/搜索