将密码更新为新密码不起作用。 不知道为什么。在我的控制器中,我添加了更新密码的代码。
我的控制器
public changePassword(){
$pass=$this->input->post('oldpassword');
$npass=$this->input->post('newpassword');
$rpass=$this->input->post('rnewpassword');
if($this->input->post('submit') != '')
{
if($npass!=$rpass){
return "false";
}
else{
$this->db->select('*');
$this->db->from('user');
$this->db->where('user_name',$this->session->userdata('username'));
$this->db->where('pwd',md5($pass));
$query = $this->db->get();
if($query->num_rows()==1){
$data = array(
'pwd' => md5($npass)
);
$this->db->where('user_name', $this->username);
$this->db->update('user', $data);
return "true";
}else{
return "false";
}
}
}
}
鉴于此,我添加了 3 个文本框来获取用户输入并将其传递给控制器。
我的观点
<form method="post" action="<?php echo base_url() ."DashBoardController/changePassword"?>">
<p><label> Old Password </label></p>
<p><input type="password" id="oldpassword" name="oldpassword"></input></p>
<p><label>New Password</label></p>
<p><input type="password" id="newpassword" name="newpassword"></input></p>
<p><label>Confirm New Password</label></p>
<p><input type="password" id="rnewpassword" name="rnewpassword"></input></p>
<input type="submit" id="submit" value="submit"></input>
<input type="reset" id="reset" value="Reset"></input>
</form>
使用Pimary Key是更好的方法
$this->db->where('user_id', $this->userid);
$this->db->update('user', $data);