Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.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 Codeigniter 3 password_verify()需要2个参数,1个给定_Php_Oop_Codeigniter 3_Password Hash - Fatal编程技术网

Php Codeigniter 3 password_verify()需要2个参数,1个给定

Php Codeigniter 3 password_verify()需要2个参数,1个给定,php,oop,codeigniter-3,password-hash,Php,Oop,Codeigniter 3,Password Hash,我一直在用CI创建登录系统 我有两个错误:- 错误1:password_verify()正好需要2个参数,1个给定的请有人告诉我缺少什么。我浏览了谷歌的多个论坛和页面,但似乎找不到合适的答案。请你们中的一位告诉我哪里可能会出错 控制器: public function auth() { $email = $this->input->post('email', TRUE); $password = password_verify($this->input->

我一直在用CI创建登录系统

我有两个错误:-
错误1:password_verify()正好需要2个参数,1个给定的
请有人告诉我缺少什么。我浏览了谷歌的多个论坛和页面,但似乎找不到合适的答案。请你们中的一位告诉我哪里可能会出错

控制器:

public function auth()
{
    $email = $this->input->post('email', TRUE);
    $password = password_verify($this->input->post('password', TRUE));
    $validate = $this->model('Loginmodel')->validate($email,$password);
    if ($validate->num_rows() > 0)
    {
        $data        = $validate->row_array();
        $fname       = $data['fname'];
        $email       = $data['email'];
        $user_level  = $data['user_level'];
        $companyname = $data['companyname'];
        $mobileno    = $data['mobileno'];
        $avatar      = $data['avatar'];
        $sesdata     = array
型号:

class Loginmodel extends CI_Model 
{
    public function validate ($email, $password)
    {
        $this->db->where('email', $email);
        $this->db->where('passwword', $password);
        $result = $this->db->get('dealers');
    }
}

您的问题在于这段代码:

密码验证($this->input->post('password',TRUE))

它需要密码散列的第二个参数进行验证,所以您需要事先将其存储在数据库中的某个位置,并检索它以传递给用户

密码验证()


方法作为第二个参数。

Btw,这真的是密码列的名称吗<代码>密码,带有2个w。@FunkFortyNiner我的错,这是一个打字错误。谢谢你的提醒。你发布的更多的是一个评论,IMHO。请不要在明显离题/糟糕的问题上发布答案!我只是想帮助这家伙。而且我没有足够的声誉来评论,哦,好吧。谢谢Fsoc,非常感谢。