[英]Saving password to the database in codeigniter
我想問一下如何將用戶密碼保存到數據庫中? 我已經完成了,但是結果保存到數據庫與輸入的密碼不同。 和密碼變成了很長一段時間的奇怪代碼。 即使我一直在使用動作“ md5”。 請更正我的語法控制器出了什么問題。謝謝
function add(){
$data['title']="Add user";
$this->_set_rules();
if($this->form_validation->run()==true){
$kode=$this->input->post('username');
$cek=$this->m_user->cek($kode);
if($cek->num_rows()>0){
$data['message']="<div class='alert alert-danger'>Username is already in use/div>";
$this->template->display('admin/adduser',$data);
}else{
$info=array(
'name'=>$this->input->post('name'),
'addres'=>$this->input->post('addres'),
'dateofbirth'=>$this->input->post('dateof birth'),
'email'=>$this->input->post('email'),
'username'=>$this->input->post('user'),
'password'=>md5($this->input->post('password')),
'level'=>$this->input->post('level')
);
$this->m_user->save($info);
redirect('admin/user/add_success');
}
}else{
$data['message']="";
$this->template->display('admin/adduser',$data);
}
}
md5是一種哈希算法,可將您的密碼哈希為長度為32個字符的字符串。 該字符串是您輸入的密碼的哈希值。 例如,如果您的密碼是abcd,則md5(password)將是d41d8cd98f00b204e9800998ecf8427e。 刪除該md5()以查看您的密碼
如果將md5應用於通過表單發布收到的輸入,則意味着您希望以安全格式加密密碼。 md5()基本上應用加密來生成32個字符長的文本,該文本是安全的並且無法解密。
同樣,這是遵循此策略的良好實踐,但在將同一主題應用於您的需求和數據之前,您需要稍加小心。
另外,如果您不想應用此加密,則只需在post變量之前省略此方法:
Before: 'password'=>md5($this->input->post('password')),//Gives encrypted 32 char long text
After : 'password'=>($this->input->post('password'), //Gives plain text
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.