Я использую codeigniter и Ion_auth для своего приложения. У них оба установлены, и они работают нормально ... Это первый раз, когда мне действительно пришлось пойти и сделать настраиваемое перенаправление с помощью codeigniter (новичок в codeigniter, тоже не мастер php, но довольно самодостаточный).
Я пытаюсь сказать, что кто-то пытается перейти к моему настраиваемому контроллеру (example.com/index.php/dashboard). Если они идут туда и вошли в систему, то с ними все в порядке, если нет, он перенаправляется на example.com/index.php/auth/login. затем при входе в систему я хочу, чтобы они отправлялись обратно на панель управления, а не на базовый URL-адрес. Я попытался установить HTTP_REFERER в функции входа в систему следующим образом:
$this->session->set_userdata('refered_from', $_SERVER['HTTP_REFERER']);
и перенаправление (после логики входа) вроде этого (найдено на многих сайтах / форумах через Google, да, я искал проблему):
if(!$this->ion_auth->logged_in())
{
// If the user is not logged in, then show the login form ( or redirect to login form )
redirect('**login url**);
} else {
// If the user is logged in then don`t let them see the the login form again and send back to the referring page.
redirect($this->session->userdata('refered_from'));
}
это выдает ошибку каждый раз как ошибку 500.
var_dump($this->session->userdata('refered_form')
посмотреть, что происходит (а также прокомментироватьredirect()
) - person Kyslik   schedule 20.09.2013