Quiero preguntar cómo devolver la respuesta como return 'Password successfully updated'; o return 'Failed to Update Record'; en mi vista usando el AJAX. Funciona bien antes sin AJAX después de enviarlo y devolver la respuesta.
Ahora solo incluyo el AJAX en mi formulario, el formulario funciona bien. pero el mensaje de error y éxito (respuesta) no aparece después de enviarlo.
Ajax
$(document).ready(function(){ $('form.jsForm').on('submit', function(e){ e.preventDefault(); $.post('change_password_process', $('form.jsForm').serialize(), function(data){ $('div.response').html(data); }); }); });Modelo
public function updatePassword($data){ //update user password $oldPassword = $data['oldPassword']; $user = $data['user']; $this->db->select('password') ->from('users') ->where('username', $user); $query = $this->db->get(); $row = $query->row(); if($this->bcrypt->check_password($oldPassword, $row->password)){ if($this->db->set('password', $data['newPassword']) ->where('username', $user) ->update('users')){ return 'Password successfully updated'; } else { return 'Failed to Update Record'; } } else { return 'Old password is incorrect!'; } }Controlador
if($this->form_validation->run() == TRUE){ $data = array( 'user' => $this->input->post('username'), 'oldPassword' => $this->input->post('oldPassword'), 'newPassword' => $this->bcrypt->hash_password($this->input->post('newPassword')), 'cPassword' => $this->input->post('cPassword') ); //this is the response from MODEL $this->session->set_flashdata('response',$this->user_accounts_model->updatePassword($data)); //redirect('user_accounts/change_password_form'); } else { $this->change_password_form(); } }Vista
<?php if($response = $this->session->flashdata('response')) :?> <div class="alert alert-dismissible alert-success"> <?=$response?> </div> <?php endif; ?> //this is the form result w/out ajax <div class="response"></div> //this is using ajaxEn el modelo solo echo en lugar de return .
if($this->db->set('password', $data['newPassword']) ->where('username', $user) ->update('users')){ echo 'Password successfully updated'; } else { echo 'Failed to Update Record'; } } else { echo 'Old password is incorrect!'; }