2014-01-30 33 views
0

我用phpass上插入散列我的密码如下phpass存储密码

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' => '[email protected]' 
); 

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

     echo "Successfully Added!"; 

    } 

但是,当匹配输入密码,我输入的登录同一用户ID &密码(正确的用户名和密码),它通过验证与存储的匹配他们,则返回“0”,我expcted以下“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(); 





    } 

请有人帮我解决这个

回答

0

最好看看here ,同时,修剪所有输入字段,你有登录和注册新用户!