Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php kohana 3.3 ORM_验证_异常[0]:验证数组失败_Php_Kohana - Fatal编程技术网

Php kohana 3.3 ORM_验证_异常[0]:验证数组失败

Php kohana 3.3 ORM_验证_异常[0]:验证数组失败,php,kohana,Php,Kohana,我的登录有问题 我的型号用户: class Model_User extends Model_Auth_User { public function login_user($data) { if(isset($data['loginSubmit']) { $auth = Auth::instance()->login($data['loginUsername'], $data['loginPassword'])

我的登录有问题

我的型号用户:

class Model_User extends Model_Auth_User
{
    public function login_user($data)
    {
         if(isset($data['loginSubmit'])
         {
              $auth = Auth::instance()->login($data['loginUsername'], $data['loginPassword']);
              return $auth;
         }
    }

    public function rules()
    {
         return array(
             'username' => array(
                   array('not_empty'),
                   array('min_length', array(':value', 3)),
                   array('max_length', array(':value', 32)),
                   array(array($this, 'unique'), array('username', ':value')),
             ),
             'password' => array(
                   array('not_empty'),
                   array('min_length', array(':value', 8)),
                   array('max_length', array(':value', 32)), //here is a bug
             ),
             'email' => array(
                   array('not_empty'),
                   array('min_length', array(':value', 4)),
                   array('max_length', array(':value', 128)),
                   array('email'),
                   array(array($this, 'unique'), array('email', ':value')),
             ),
         );
    }
}
在数据库中,密码有一个64个符号的散列。肯定是肯定的,但有些事情是错的。我知道,这是由密码长度的差异造成的-原始密码最多有32个符号,但经过哈希运算后,密码最多有64个符号。当我打电话的时候

Auth::instance()->login($data['loginUsername'], $data['loginPassword']);

第二次调用验证规则,但在散列之后,是什么导致了错误。如何修复它?

我知道,将密码的最大长度规则设置为64个字符。但我想要最大长度32。你似乎把事情搞混了。规则定义数据库存储的规则,而不是输入字段的规则。您需要允许64个字符才能将哈希保存到数据库OK。但我听说在Kohana3.3中,一开始,验证被称为,而不是过滤器散列。我不确定这一点。如果将max_length设置为64,是否仍会出现错误?如果不是,则可能先运行过滤器