Heim  >  Fragen und Antworten  >  Hauptteil

Bei der Verifizierung des Telefons wird ohne Aufforderung zur Registrierungsseite gesprungen.

Bei der Verifizierung des Mobiltelefons wird ohne Aufforderung zur Registrierungsseite gesprungen

Die vorherige E-Mail-Adresse und der Benutzername können normal verifiziert werden

王先生王先生1780 Tage vor1436

Antworte allen(5)Ich werde antworten

  • 王先生

    王先生2019-11-06 11:54:51

    已解决,原来真的是注册页面的name属性设置错误

    Antwort
    0
  • 王先生

    王先生2019-11-06 09:38:48

    注册页面的内容太多,貌似贴不上来,

    注册页面和老师的写的一模一样

    Antwort
    0
  • 王先生

    王先生2019-11-06 09:15:09

    控制器

    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');
           }
       }

    }

    Antwort
    0
  • 王先生

    王先生2019-11-06 09:14:40

    验证规则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字段进行相等验证
           ],

       ];
    }

    Antwort
    0
  • 卢小强

    卢小强2019-11-06 08:54:38

    贴代码看下

    Antwort
    0
  • StornierenAntwort