codeigniter - 在codeigniter中更改密码时更新数据库中的密码和盐
问题描述
我有一个表格来更改当前密码。当我用新密码更新旧密码时,我无法登录,因为我正在使用密码和盐安全登录,现在我不知道在更改密码时如何更改盐。
这是我的视图代码:
<div class="form-group">
<label class="col-sm-2 control-label">New Password <span class="required">*</span></label>
<div class="col-sm-10">
<input type="password" name="new_password" id="new_password" class="form-control" required />
<span class="error_message"></span>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">Confirm Password <span class="required">*</span></label>
<div class="col-sm-10">
<input type="password" name="confirm_password" id="confirm_password" class="form-control" required />
</div>
</div>
<div class="form-group">
<div class="col-sm-4 col-sm-offset-2">
<button class="btn btn-primary" type="submit" name="submit" value="submit">Submit</button>
</div>
</div>
控制器代码:
public function index() {
$this->admin_view('changepassword');
if ($this->input->post('submit')) {
$users_id = $this->session->userdata('users_id');
$new_pwd = md5($this->input->post('new_password'));
$change_password = $this->login_model->change_password($users_id,$new_pwd);
//print_r($new_pwd);exit();
if ($change_password) {
$this->session->set_flashdata('success_message', "'Password Changed.'");
$this->admin_view('changepassword');
}
}
}
型号代码:
public function change_password($id,$new_pwd){
$data = array('password' => $new_pwd);
$this->db->where('roles_id',$id);
$this->db->update('users', $data);
return true;
}
解决方案
推荐阅读
- vue.js - Storybook:将上下文文件中定义的道具传递给组件
- python - 有人可以解释一下这段代码的第 5 行吗?
- react-native - React Native:如何结合两种颜色作为视图背景
- python - 如何制作更多的菜单栏?
- html - hidden: true 不隐藏段落
- python - 如何在 Heroku 的 Python 服务器上执行“g++”命令?
- oracle - 使用 oracle 中断列值并使用存储过程插入表中
- salesforce - 如何使用 LWC 导航到社区的菜单项
- reporting-services - SSRS 按表达式分组导致除法错误
- excel - 运行时错误 1004 - 对象 Worksheer 的方法“名称”失败