Когда я нажимаю «Отправить» для ввода текущего пароля, нового пароля и подтверждения пароля, он продолжает отображать ошибку [Невозможно получить доступ к сообщению об ошибке, соответствующему имени вашего поля Текущий пароль. (CheckCurrentPassword)] рядом с текстовым полем текущего пароля.Пожалуйста, помогите, спасибо!
Ниже мой контроллер:
public function chgpass()
{
//$this->load->view('chgpass');
//$this->load->library('form_validation');
$this->form_validation->set_rules('cpassword','Current Password','trim|required|max_length[20]|min_length[6]|callback_checkCurrentPassword|xss_clean');
$this->form_validation->set_rules('npassword','New Password','trim|required|max_length[20]|min_length[6]');
$this->form_validation->set_rules('copassword','Confirm Password','trim|required|max_length[20]|min_length[6]');
if($this->form_validation->run() == FALSE){
$this->load->view('chgpass');
}else{
$this->load->model('Form_model');
$this->load->view('chgpass');
$query = $this->Form_model->checkCurrentPassword($this->input->post('cpassword'));
if($query){
$query = $this->Form_model->saveNewPassword($this->input->post('npassword'));
if($query){
$this->session->sess_destroy();
$data['error']='Password Change Successfully!';
$this->load->view('chgpass',$data);
}else{
$this->session->set_flashdata('msg','<div class="alert alert-danger text-center">Oops! Error. Please try again later!!!</div>');
redirect('main/chgpass');
}
}
}
}
}
Ниже моя модель:
public function checkCurrentPassword($cpassword)
{
$this->db->select('id');
$this->db->where('id',$this->session->userdata('id'));
$this->db->where('password',$this->input->post('cpassword'));
$query = $this->db->get('users');
if($query->num_rows() > 0){
return true;
}else{
$this->form_validation->set_message('checkCurrentPassword','Wrong old password!');
return false;
}
}
public function saveNewPassword($npassword)
{
$data = array(
'password' => $npassword
);
$this->db->where('id',$this->session->userdata('id'));
$this->db->where('password',$this->input->post('cpassword'));
$query = $this->db->update('users',$data);
if($query){
return true;
}else{
return false;
}
}