银河源码-PHP源码下载

高品质源码点击这里给我发消息PHP-LotusAdmin官方论坛

yii2表单验证唯一性问题解决

注册时不用提交就验证用户名、邮箱等是否已将存在,用Ajax实现
首先,先在Form表中开启Ajax

    ...
 <?php $form = ActiveForm::begin(['enableAjaxValidation' => true]); ?>
    ...

其次,再_对应的_Controller加入一段Ajax验证的代码

    ...
 if ($model->load(Yii::$app->request->post())) {

         if (Yii::$app->request->isAjax) {
             Yii::$app->response->format = Response::FORMAT_JSON;

             return ActiveForm::validate($model);
         } //ajax提交过来的会直接进行验证
    ...

最后,再对应的models里面增加验证的rules

    ...
 ['username', 'unique', 'targetClass' => '\backend\models\User', 'message' => '用户名已存在.'],
 //targetClass目标模型类(这个不能照抄,要结合你项目注册新用户时的模型类)
 ['email', 'unique', 'targetClass' => '\backend\models\User', 'message' => '邮箱已存在.'],
    ...

貌似三者缺一都会失效,网上的教材要么只给第二步,要么只提供第三步,着实让新手有点困惑。

为此,我总结研究了下,希望可以帮助对此有困惑的人

如果支付后未自动下载,请主动联系站长,站长QQ 610176732

当前页面:银河源码-PHP源码下载 » yii2表单验证唯一性问题解决

评论 124

  1. generic phenergan

    JaneHiest 2019-03-09    回复
  2. tadalafil

    KimHiest 2019-03-08    回复
  3. tadalafil

    AmyHiest 2019-03-08    回复
  4. Hi! Someone in my Myspace group shared this site with us so I
    came to give it a look. I'm definitely enjoying the information. I'm bookmarking and will be
    tweeting this to my followers! Exceptional blog and brilliant style
    and design.
    kamagra jelly
    [url=http://kamagrainus.com/]buy kamagra jellies[/url]

    kamagra jelly 2019-03-08    回复
  5. prednisolone

    KiaHiest 2019-03-07    回复