本帖最后由 Rming 于 2013-11-30 00:21 编辑
今天写了找回密码的页面,在一个页面里写上了两个表单,一个表单是提交手机号的,一个是提交email的,使用tab形式显示,供选择,但是碰到表单验证的时候,设置验证规则不比以前那么简单了。 以前都是用这样的形式设置验证条件的 PHP复制代码 $this->form_validation->set_rules 复制代码 ,我想CI应该有多表单验证的规则,通过查手册,发现可以通过设置多组验证规则,看了设置方法:
1、在app/config/form_validation.php 中设置多组规则 eg:
PHP复制代码 $config=array(
[p =30, 2, left ]'email'=>array(array('field'=>'xxx','label'=>'xxx',rules =>'xxx')),[/p ]'phone'=>array(array('field'=>'xxx','label'=>'xxx',rules =>'xxx'))
) 复制代码
2、去验证时候调用 app/controllers/user.phpPHP复制代码 function password_fogot(){ } 复制代码 里使用PHP复制代码 $this->form_validation->run('phone') 复制代码 或PHP复制代码 $this->form_validation->run('email') 复制代码 验证
使用过程中我有几点疑问:
1、在config目录下设置了多组验证规则后,如果我在controller里的其他控制器中没有说明是哪一组验证规则,而是临时使用的set_rules()设置规则,$this->form_validation->run()去验证,这样之前在config里设置的验证规则组会不会对临时设置的验证有影响?
2、多组验证规则可不可以通过PHP复制代码 $this->form_validation->set_rules() 复制代码 和PHP复制代码 $this->form_validation->run() 复制代码 临时设置的方式实现? |