溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

thinkphp5如何進(jìn)行異步驗(yàn)證郵箱

發(fā)布時(shí)間:2021-09-14 16:10:30 來源:億速云 閱讀:116 作者:小新 欄目:編程語言

這篇文章主要為大家展示了“thinkphp5如何進(jìn)行異步驗(yàn)證郵箱”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“thinkphp5如何進(jìn)行異步驗(yàn)證郵箱”這篇文章吧。

TP5使用bootstrapvalidator進(jìn)行異步驗(yàn)證郵箱

js驗(yàn)證

/**
 * Created by HONGXIN on 2017-10-23.
 */
$(function () {
    $('form').bootstrapValidator({

        message: 'This value is not valid',
        feedbackIcons: {
            valid: 'glyphicon glyphicon-ok',
            invalid: 'glyphicon glyphicon-remove',
            validating: 'glyphicon glyphicon-refresh'
        },

        live: 'disabled',//驗(yàn)證失敗后,提交按鈕仍然是可選狀態(tài)

        fields: {
            email: {
                message: '用戶名驗(yàn)證失敗',//默認(rèn)
                verbose: false,
                validators: {
                    notEmpty: {
                        message: '郵箱不能為空'
                    },
                    emailAddress: {
                        message: '郵箱地址格式有誤'
                    },
                    remote: {
                        url: '/ajax_email',
                        message:"此郵箱已經(jīng)注冊(cè)",
                        type: "post",
                        dataType: 'json',
                        data: {
                            //默認(rèn)傳遞的就是輸入框的值
                        },
                        delay: 500,//延遲效果
                    },
                }
            },
            password: {
                validators: {
                    notEmpty: {
                        message: '郵箱地址不能為空'
                    },
                    stringLength: {
                        min: 6,
                        max: 18,
                        message: '用戶名長(zhǎng)度必須在6到18位之間'
                    },
                },
            },
            password2: {
                validators: {
                    notEmpty: {
                        message: '確認(rèn)密碼不能為空'
                    },
                    identical: {
                        field: 'password',
                        message: '兩次密碼必須一致'
                    }
                }
            },
            username:{
                validators: {
                    notEmpty: {
                        message: '用戶名不能為空'
                    },
                    stringLength: {
                        min: 2,
                        max: 8,
                        message: '用戶名長(zhǎng)度必須在2到8位之間'
                    }
                }
            }

        }
    });
});

TP5處理

    public function ajax_email(){
        //該message可以為空,它替換JS驗(yàn)證的message屬性
       echo json_encode(['valid'=>false,'message'=>'驗(yàn)證碼不正確']);

    }

js驗(yàn)證幾個(gè)注意點(diǎn)

  • verbose: false,代表js驗(yàn)證合法后再異步后臺(tái)驗(yàn)證,這樣減少服務(wù)器壓力

  • data: {} ,默認(rèn)傳遞的就是輸入框的值,所以一般不用寫該屬性,或者為空即可

后臺(tái)注意點(diǎn)

  • 注意不是return而是echo

  • 返回json格式 {'valid':true[,'message':'驗(yàn)證成功']}

以上是“thinkphp5如何進(jìn)行異步驗(yàn)證郵箱”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI