您的位置:首页 > 编程语言 > PHP开发

Thinkphp 登录以及注册的自动验证

2016-09-22 16:56 197 查看
Thinkphp手册上自动验证以及自动验证介绍以及规则

用Thinkphp框架对用户登录,注册的验证需要在自定义模型UserModel中定义patchValidate变量为true以及_validate的数组的值

protected $patchValidate = true;

protected $_validate = array(
array(
'account',
'require',
'用户名必须填写',
self::EXISTS_VALIDATE,
), array(
'password',
'require',
'密码必须填写',
self::EXISTS_VALIDATE,
)
);

注册:

array(
'account',
'require',
'用户名必须填写',
self::EXISTS_VALIDATE,
'regex',            //正则表达式
self::MODEL_INSERT  //在插入时验证 可以为1
),array(
'account',
'/^[a-zA-Z]{1}\w{6,10}$/',
'用户名必须已字母开头且长度为7~11'
),array(
'account',
'',
'用户名已注册',
self::EXISTS_VALIDATE,
'unique',
self::MODEL_INSERT
),


而在控制器中需要判断是否POST提交表单请求而自动验证的前提需要创建数据对象$user->create()才能进行对表单进行验证

if(IS_POST){
$result=$user->where('account='."'".I('post.account')."'")->find();
if($user->create()){
$this->success('验证成功', '../Home/index', 6);
}else{
$this->assign('errors',$user->getError());
$this->display();
}
}else{
$this->display();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: