Bei der Verifizierung des Mobiltelefons wird ohne Aufforderung zur Registrierungsseite gesprungen
Die vorherige E-Mail-Adresse und der Benutzername können normal verifiziert werden
已解决,原来真的是注册页面的name属性设置错误
注册页面的内容太多,貌似贴不上来,
注册页面和老师的写的一模一样
控制器
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'); } }}
验证规则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字段进行相等验证 ], ];}
贴代码看下
已解决,原来真的是注册页面的name属性设置错误
注册页面的内容太多,貌似贴不上来,
注册页面和老师的写的一模一样
控制器
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');
}
}
}
验证规则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字段进行相等验证
],
];
}
贴代码看下