0
要設計密碼用戶名認證,我嘗試從表(成員資格)檢索'salt'並將其附加到密碼。然後使用SHA256加密組合。但是,當我寫的validate()函數如下,錯誤傳出如何在CodeIgniter中編寫用於數據庫查詢的複合語句
嚴重性:4096
消息:類CI_DB_mysql_driver的對象無法轉換爲 串
代碼:
public function validate(){
$this->db->where('username',$this->input->post('username'));
$salt=(string)$this->db->select('salt');
$this->db->where('password',hash('sha256',$this->input->post('password').$salt));
$query=$this->db->get('membership');
if($query->num_rows()==1){ return TRUE; }
}
如何解決問題?我使用的是codeigniter 2.1.2。非常感謝!
它的工作原理!非常感謝! – CT006
很高興幫助。 –
難道這不是使用MySQL的哈希完成的嗎?即'$ this-> db-> where('Password','SHA2(concat('。$ this-> db-> escape($ this-> db-> post('password',true))。', salt),256)',null);'? – Gavin