thinkPHP表單異步驗證和表單驗證

在thinkPHP中有一個專門的類文件能夠自動生成驗證碼 的,php

Thinkphp/Library/Think/Verify.class.phpajax

public function code(){
        $config =    array(
        'fontSize'    =>    20,    // 驗證碼字體大小 
        'length'      =>    4,     // 驗證碼位數 
        'useNoise'    =>    false, // 關閉驗證碼雜點
        );
        $Verify = new \Think\Verify($config);
        $Verify->entry();
    }字體

Verify類中的entry()是自動生成驗證碼的,驗證碼的大小和效果能夠經過配置屬性$config修改,能夠去Verify.class.php看下源碼是怎麼樣的code

驗證驗證碼:源碼

    public function code($code){
        $verify = new \Think\Verify($config);
        return $verify->check($code);
    }io

當使用ajax進行無刷新驗證的成功的時候,提交表單後臺再一次進行驗證時,會出現驗證碼錯誤,出現這樣的緣由是由於,配置屬性裏面有一項reset 的值爲true,這個是爲true的時候,就是驗證碼驗證成功後會重置驗證碼,因此當ajax驗證成功的時候,表單提交再驗證的話就會失敗,解決:function

       public function code($code){
        $config =    array(
        'reset'          =>    false, //驗證成功後不重置驗證碼
        );
        $verify = new \Think\Verify($config);
        return $verify->check($code);
    }驗證碼

相關文章
相關標籤/搜索