首页 >社区问答列表 >在验证手机的时候,没有任何提示就跳转会注册页面了

在验证手机的时候,没有任何提示就跳转会注册页面了

在验证手机的时候,没有任何提示就跳转会注册页面了

前面的邮箱和用户名可以正常验证

  • 王先生
  • 王先生    2019-11-06 09:15:093楼

    控制器

    namespace app\index\controller;
    use app\common\controller\Base;
    use think\facade\Request;
    use app\common\model\User as UserModel;
    class User extends Base
    {
       //注册页面
       public function register()
       {
           $this->assign('title','用户注册');
           return $this->fetch();
       }

       //处理用户提交的注册信息
       public function insert()
       {
           if(Request::isAjax())
           {
               /**
                * 使用模型来创建数据
                */
               //验证数据
               $data= Request::post();//等到要验证的数据
               $rule= 'app\common\validate\User';//自定义的验证规则
               $res=$this->validate($data,$rule);//开始验证数据
               if(true !==$res)
               {
                   //如果数据不正确,返回验证信息
                   return ['status'=>-1,'message'=>$res];
               }
               else
               {
                   //如果数据正确
                   if(UserModel::create($data))
                   {
                       return ['status'=>1,'message'=>'恭喜,注册成功'];
                   }
                   else
                   {
                       return ['status'=>0,'message'=>'注册失败,请检查'];
                   }
               }

           }
           else
           {
               $this->error("请求类型错误", 'register');
           }
       }

    }

    +0添加回复

  • 回复
  • 王先生
  • 王先生    2019-11-06 09:14:402楼

    验证规则namespace app\common\validate\User.php:

    namespace app\common\validate;
    use think\Validate;
    class User extends Validate
    {
       /**
        * 当前验证规则
        * @var array
        */
       protected $rule = [
           /**
            * 另一种写法:
            * 'name|用户名'=>'require|length:5,20|chsAlphaNum',
            * 'email|邮箱'=>'require|email|unique:zh_user',
            * 'password|密码'=>'require|alphaNum|length:6,20|confirm',
            * 'mobile|手机'=>'require|mobile|unique:zh_user|number'
            */
           'name|用户名'=>[
               'require'=>'require',
               'length'=>'5,20',
               'chsAlphaNum'=>'chsAlphaNum',//仅允汉字,字符和数字
           ],
           'email|邮箱'=>[
               'require'=>'require',
               'unique'=>'zh_user',//该字段值在zh_user表中是唯一性
               'email'=>'email',
           ],
           'mobile|手机'=>[
               'require'=>'require',
               'mobile'=>'mobile',
               'unique'=>'zh_user',//该字段值在zh_user表中是唯一性
               'number'=>'number',
           ],
           'password|密码'=>[
               'require'=>'require',
               'alphaNum'=>'alphaNum',//仅允许字母加数字
               'length'=>'6,20',//长度限定
               'confirm'=>'confirm',//自动与password_confirm字段进行相等验证
           ],

       ];
    }

    +0添加回复

  • 回复