表单验证中callback可否再加参数?
$rules['aa'] = 'callback_check'可是除了aa,还想在check的时候调用传过来的id参数。请问callback中除了rules那个参数本身之外可否再传递参数?或者还有别的办法吗?
谢谢!! 不能加其他参数。
如果有更多要求,请扩展表单验证类。 本帖最后由 Rming 于 2013-12-8 18:04 编辑
Hex 发表于 2009-8-28 00:44 static/image/common/back.gif
不能加其他参数。
如果有更多要求,请扩展表单验证类。
是可以传递参数的,不过只能是单一变量。
eg.编辑用户信息时,判断用户名是否更改,1、没有更改,2、更改了,新用户名唯一 3、更改了,新用户名不唯一
$user = $this->user_model->get_user_by_id('$id');
$this->form_validation->set_rules('username', '账户名称','required|trim|min_length|max_length|callback_username_edit_check['.$user['username'].']');
function username_edit_check($str,$username){
if ($str!=$username){
if (!$this->form_validation->is_unique($str,'user.username')){
$this->form_validation->set_message('username_edit_check', '账户名称被占用.');
return false;
}else{
return $str;
}
}else{
return $str;
}
}
有点类似max_length 那个32、、、
页:
[1]