0

我使用 phpass 在 Insert 上对我的密码进行哈希处理,如下所示

  public function addAdmin(){
        $this->load->library('phpass');
        $this->load->database();
        $psw = 'admin1234';
        $hashed = $this->phpass->hash($psw);
        $now = date("Y-m-d H:i:s");

        $data = array(
   'userid' => 'admin_user' ,
   'userfname' => 'Admin' ,
   'userlname' => 'Admin',
   'userdname' => 'Admin' ,
   'useraddress' => '20/72,Vidarshana Mawatha, Galawilawatta, Homagama' ,
   'usercountry' => 'Sri Lanka',
   'usercontactno' => '0112-892199' ,
   'userlastlog' => $now ,
   'userpassword' => $hashed ,
   'userpermission' => '1',
   'useremail' => 'dilukshanmahendra@gmail.com'
);

$this->db->insert('ecom-user', $data); 

        echo "Successfully Added!";

    }

但是,当我在登录时输入相同的用户 ID 和密码(正确的用户 ID 和密码)时,它通过将它们与存储的匹配来验证,它返回 '0' 用于以下我期望为 '1'

public function validateLogin($userid,$userpass){    


    $this->load->library('phpass');
    $this->load->database();
    $hashed = $this->phpass->hash($userpass);

    $this->db->select('*');
    $this->db->from('ecom-user');
    $this->db->where('userid', $userid);
    $this->db->where('userpassword', $hashed);

    $result = $this->db->get();

    echo $this->db->last_query(); 
    echo '<br/>'.$result->num_rows();





    }

请有人帮我解决这个问题

4

1 回答 1

0

最好看看这里 ,同时,修剪所有用于登录和注册新用户的输入字段!

于 2014-01-30T08:04:43.903 回答