Maison  >  Article  >  cadre php  >  Un article expliquant comment thinkphp5 effectue une vérification asynchrone des e-mails

Un article expliquant comment thinkphp5 effectue une vérification asynchrone des e-mails

藏色散人
藏色散人avant
2021-09-14 15:53:191937parcourir

framework thinkphpLa colonne du didacticiel vous présentera comment thinkphp5 utilise bootstrapvalidator pour vérifier de manière asynchrone les e-mails. J'espère que cela sera utile aux amis dans le besoin !

Un article expliquant comment thinkphp5 effectue une vérification asynchrone des e-mails

TP5 utilise bootstrapvalidator pour la vérification asynchrone des e-mails

vérification js

/**
 * 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',//验证失败后,提交按钮仍然是可选状态

        fields: {
            email: {
                message: '用户名验证失败',//默认
                verbose: false,
                validators: {
                    notEmpty: {
                        message: '邮箱不能为空'
                    },
                    emailAddress: {
                        message: '邮箱地址格式有误'
                    },
                    remote: {
                        url: '/ajax_email',
                        message:"此邮箱已经注册",
                        type: "post",
                        dataType: 'json',
                        data: {
                            //默认传递的就是输入框的值
                        },
                        delay: 500,//延迟效果
                    },
                }
            },
            password: {
                validators: {
                    notEmpty: {
                        message: '邮箱地址不能为空'
                    },
                    stringLength: {
                        min: 6,
                        max: 18,
                        message: '用户名长度必须在6到18位之间'
                    },
                },
            },
            password2: {
                validators: {
                    notEmpty: {
                        message: '确认密码不能为空'
                    },
                    identical: {
                        field: 'password',
                        message: '两次密码必须一致'
                    }
                }
            },
            username:{
                validators: {
                    notEmpty: {
                        message: '用户名不能为空'
                    },
                    stringLength: {
                        min: 2,
                        max: 8,
                        message: '用户名长度必须在2到8位之间'
                    }
                }
            }

        }
    });
});

Traitement TP5

    public function ajax_email(){
        //该message可以为空,它替换JS验证的message属性
       echo json_encode(['valid'=>false,'message'=>'验证码不正确']);

    }

Plusieurs notes sur la vérification js

  • verbose: false, ce qui signifie qu'après js la vérification est légale Effectuez ensuite une vérification en arrière-plan asynchrone pour réduire la pression du serveurverbose: false,代表js验证合法后再异步后台验证,这样减少服务器压力
  • data: {} ,默认传递的就是输入框的值,所以一般不用写该属性,或者为空即可

后台注意点

  • 注意不是return而是echo
  • 返回json格式 {'valid':true[,'message':'验证成功']}
  • data : {}, la valeur de la zone de saisie est passée par défaut, il n'est donc généralement pas nécessaire d'écrire cet attribut, ou il peut être vide
🎜Notes sur l'arrière-plan 🎜🎜🎜Notez qu'il ne s'agit pas d'un retour mais d'un écho🎜🎜Retour au format json {'valid':true[,'message':'Verification success']}🎜🎜🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer