#codeigniter #redirect
#codeigniter #перенаправление
Вопрос:
Я пытаюсь получить fc_id иммунизации, а затем передать его в профилирование, но проблема в том, что redirect() не работает. Я успешно переношу свой fc_id, но проблема в том, что я не могу перейти к просмотру профилирования при нажатии кнопки.
Вот несколько фотографий, чтобы четко понять мой вопрос
Итак, вот мой код.
Вид:
$(document).on("click", "#view_profile", function(e){
e.preventDefault();
var view_id = $(this).attr("value");
$.ajax({
url: "<?php echo base_url(); ?>immunization/view_profile",
type: "post",
dataType: "json",
data: {
view_id: view_id
}
});
});
<a href="#" value="${row.fc_id}" id="view_profile" class="btn btn-sm btn-outline-secondary">View Profile</a>
Контроллер иммунизации:
public function view_profile(){
$this->load->helper('url');
$this->load->library('session');
if ($this->input->is_ajax_request()) {
$view_id = $this->input->post('view_id');
$this->session->set_tempdata('view_id', $view_id);
redirect('profiling/index');
}
}
Контроллер профилирования:
public function index(){
$this->load->helper('url');
$this->load->library('session');
$this->load->view('profiling');
}
Ответ №1:
Вы пытаетесь перенаправить запрос ajax, и это не сработает. Просто отправьте обратно какое-нибудь сообщение, если все в порядке, и в случае успеха ajax проверьте это сообщение и перенаправьте оттуда с location.href = yoururl
помощью like:
В вашем php:
$this->session->set_tempdata('view_id', $view_id);
echo json_encode('msg' => 'ok');
js:
$.ajax({
url: "<?php echo base_url(); ?>immunization/view_profile",
type: "post",
dataType: "json",
data: {
view_id: view_id
}
success: function(resp){
if (resp.msg == 'ok') location.href = 'profiling/index';
}
});
Комментарии:
1. Это работа. Хотя я изменил некоторые из ваших ответов. Вот мой рабочий код. $этом->сессия->set_tempdata(‘view_id’, $view_id); $данных = массив(‘сообщение’ => ‘ОК’); Эхо json_encode($данных); затем в моем скрипте: $.технология AJAX({ URL-адрес: «<?php echo base_url(); ?>иммунизация/view_profile», тип: «пост», тип данных: «JSON с», Данные: { view_id: view_id }, успех: функция(соответственно){ если (респ.МСГ == ‘ОК’) местоположение. с href = ‘<?php echo base_url(); ?>профилирование/индекс’; } }); }); Спасибо большое за ответ на мой вопрос.