Codeigniter Controller возвращается на предыдущую страницу
Я хотел бы спросить вас, как я могу вместо $this- > load- > view ('some_view.php') в конце кода контроллера вернуть пользователя на страницу, откуда он вызвал метод контроллера? Простой оператор возврата не работает.
т.
public function someMethod($IDCustomer) {
$this->Some_modal->persist($IDCustomer);
// how to return to previous page instead of line after?
// i've used $this->load->view('someView.php');
}
Ответы
Ответ 1
Это должно помочь http://www.codeigniter.com/user_guide/libraries/user_agent.html
$this->load->library('user_agent');
if ($this->agent->is_referral())
{
echo $this->agent->referrer();
}
или прямой PHP:
redirect($_SERVER['HTTP_REFERER']);
Ответ 2
Я нашел ответ на какой-то поток.
На странице, которую вы хотите вернуться к вам, можно сделать:
$this->session->set_userdata('referred_from', current_url());
Затем перенаправляйте обратно на эту страницу
$referred_from = $this->session->userdata('referred_from');
redirect($referred_from, 'refresh');
Ответ 3
Я попробовал header('location:'.$_SERVER['HTTP_REFERER']);
, и он работает довольно хорошо.
Просто однострочный старый PHP-код.