Yii2.0使用教程(五)

2025-05-31 01:17:36

1、藜局腑载添加验证规则打开/frontend/models/SignupForm.php主要是修改增加验证码功能、用户名长度,以及修改密码时的第二次密码输入的踝怆赜泖操作,完成代码如下:<?phpnamespace frontend\models;use yii\base\Model;use common\models\User;/*** 注册表单验证*/class SignupForm extends Model{ public $username; //用户密码 public $email; //邮箱 public $password; //密码字段 public $repassword; //重复密码字段 public $verifyCode; //添加验证码字段 public function rules(){ return [ //用户名 ['username', 'filter', 'filter' => 'trim'],//截取前后空格 ['username', 'required'], ['username', 'unique', 'targetClass' => '\common\models\User', 'message' => '该用户名已被使用!'], ['username', 'string', 'min' => 6, 'max' => 16],//用户名字符限制,6-16位 ['username', 'match','pattern'=>'/^[(\x{4E00}-\x{9FA5})a-zA-Z]+[(\x{4E00}-\x{9FA5})a-zA-Z_\d]*$/u','message'=>'用户名由字母,汉字,数字,下划线组成,且不能以数字和下划线开头。'], //用户邮箱 ['email', 'filter', 'filter' => 'trim'], ['email', 'required'], ['email', 'email'], ['email', 'string', 'max' => 255], ['email', 'unique', 'targetClass' => '\common\models\User', 'message' => '该邮箱已经被注册!'], //密码 [['password','repassword'], 'required'], [['password','repassword'], 'string', 'min' => 6], //重复密码验证 ['repassword', 'compare', 'compareAttribute' => 'password','message'=>'两次输入的密码不一致!'], //验证码 ['verifyCode', 'captcha'], ]; } /** * Signs user up. * * @return User|null the saved model or null if saving fails */ public function signup() { if (!$this->validate()) { return null; } $user = new User(); $user->username = $this->username; $user->email = $this->email; $user->setPassword($this->password); $user->generateAuthKey(); return $user->save() ? $user : null; } }

Yii2.0使用教程(五)

3、显示结果如下:http://c.com/site/signup.html又搞定了,谢谢关注哦

Yii2.0使用教程(五)
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢