Я пытался много разных вещей, чтобы получить эту работу, и это то, что я в настоящее время:Codeigniter 3 вернуться на предыдущую страницу после авторизации
// save the redirect_back data from referral url (where user first was prior to login)
$this->session->set_userdata('redirect_back', $this->agent->referrer());
// user is authenticated, lets see if there is a redirect:
if($this->session->userdata('redirect_back'))
{
$redirect_url = $this->session->userdata('redirect_back'); // grab value and put into a temp variable so we unset the session value
$this->session->unset_userdata('redirect_back');
redirect($redirect_url, 'refresh');
}
else
{
redirect('/', 'refresh');
}
Проблема с этим не иногда нет URL перехода. Например, я разрешаю загрузку видео/изображений. Если пользователь находится на домашней странице, и они нажимают кнопку «Добавить видео», и они не регистрируются в ней, перенаправляет их на страницу входа в систему и обновляется, и больше нет реферального URL-адреса. Я хочу, чтобы пользователь перенаправлялся обратно на страницу загрузки видео, потому что они пытались получить доступ к этой странице, но не могли, потому что они не вошли в систему.
Знаете ли вы, почему это происходит?
Вы можете использовать функцию 'current_url()' из помощника URL. – Tpojka
поэтому заменил бы '$ this-> agent-> referrer()' на 'current_url()'? – iamthestreets
Я бы попробовал это в настройке сеанса. Это текущий контроллер/метод url. – Tpojka