Kohana使用orm和外部验证码规则进行验证

时间:2013-06-26 08:19:29

标签: validation orm kohana external captcha

我正在尝试为验证码添加外部验证规则,如下所示:

$extra_rules = Validation::factory($_POST)
                    ->rule('captcha',  array(Captcha::valid($_POST['captcha'])));

我认为有效的函数正在运行,但后来我收到了这个错误:

ErrorException [ Notice ]: Undefined offset: 1
SYSPATH/classes/Kohana/Validation.php [ 376 ]
371                     // Replace with bound value
372                     $rule[0] = $this->_bound[$rule[0]];
373                     }
374 
375                     // This is an array callback, the method name is the error name
376                     $error_name = $rule[1];
377                     $passed = call_user_func_array($rule, $params);

请帮忙。我不知道如何管理这个验证码验证

1 个答案:

答案 0 :(得分:1)

看起来你没有正确定义验证规则,试试这个:

$extra_rules = Validation::factory($this->request->post())
                ->rule('captcha',  'Captcha::valid'));

另外,由于Kohana v3。+ HMVC功能,不鼓励使用$_POST超全球,建议使用$this->request->post()