用户
 找回密码
 入住 CI 中国社区
搜索
12
返回列表 发新帖
楼主: 唯~愛羅
收起左侧

[已解决] username_check验证错误

[复制链接]
 楼主| 发表于 2017-3-16 19:14:16 | 显示全部楼层
Hex 发表于 2017-3-16 17:28
控制器里,任何地方都可以调用模型。

在form_validation里写了约束条件,在模型中写了username_check回调函数,然后在控制器中验证约束条件,但是有问题
array(
        'field'=>'username',
        'label'=>'用户名',
        'rules'=>'alpha_dash|callback_username_check'
        ),


// 检测帐号是否存在
        public function username_check()
        {
                $query = $this->db
                ->select('username')
                ->from('user')
                ->where('username',$this->input->post('username'));
                if ($query->num_rows()>0) {       
                        return true;
                }else{
                        return false;
                }
        }
发表于 2017-3-16 22:01:36 | 显示全部楼层
唯~愛羅 发表于 2017-3-16 19:14
在form_validation里写了约束条件,在模型中写了username_check回调函数,然后在控制器中验证约束条件, ...

表单验证类的 callback 不能写到模型里,只能写到控制器里。
建议仔细看手册,不要自己去猜测 CI 的写法,这样学习 CI 效率较低。
发表于 2017-3-17 09:02:12 | 显示全部楼层
我就是来看看我刚上传的签名的.
 楼主| 发表于 2017-3-17 10:26:09 | 显示全部楼层
Hex 发表于 2017-3-16 22:01
表单验证类的 callback 不能写到模型里,只能写到控制器里。
建议仔细看手册,不要自己去猜测 CI 的写法, ...

好的
 楼主| 发表于 2017-3-17 14:09:05 | 显示全部楼层
Hex 发表于 2017-3-16 22:01
表单验证类的 callback 不能写到模型里,只能写到控制器里。
建议仔细看手册,不要自己去猜测 CI 的写法, ...

callback写在控制器中验证规则会自动调用这个函数么
发表于 2017-3-17 22:56:19 | 显示全部楼层
唯~愛羅 发表于 2017-3-17 14:09
callback写在控制器中验证规则会自动调用这个函数么

是呀,自动调用,你试试呀,按照手册的写法写,不要按照自己的理解写。
 楼主| 发表于 2017-3-18 14:27:38 | 显示全部楼层
Hex 发表于 2017-3-17 22:56
是呀,自动调用,你试试呀,按照手册的写法写,不要按照自己的理解写。 ...

恩恩,已经解决了,发现手册写的挺详细的,谢谢帮忙

本版积分规则