Вернуться на последнюю веб-страницу после входа в систему

Мне нужна помощь, чтобы выяснить, как разрешить пользователям, которые входят в систему, вернуться на страницу, на которой они находились, до отправки на страницу входа. Вот цитата из моего босса:

Иногда я забываю войти в систему и захожу на страницу, нажимаю и получаю уведомление о присоединении или входе в систему. Это нормально, но есть ли способ, как только я войду, чтобы открыть страницу, которую я пытался открыть до подписания в, вместо того, чтобы снова пройти всю навигацию?

Я использую PHP, чтобы сделать этот проект.

1 ответ

Какой бы механизм ни направлял пользователя на страницу входа, он должен включать URL-адрес исходной страницы в качестве параметра. Что-то вроде:

header('Location: http://example.com/login.php?redirectTo=' + urlencode($_SERVER['REQUEST_URI']));

Тогда login.php страница может перенаправить на эту страницу после аутентификации пользователя:

header('Location: ' . $_GET['redirectTo']);

Вы можете включить некоторые проверки на redirectTo значение в login.php чтобы никто не пытался сделать что-то злое, я полагаю. Хотя в настоящее время я не могу придумать ничего злого, что они могли бы сделать. (Хотя вы хотели бы включить значение по умолчанию, если URL не был указан.)

Но общая идея заключается в том, что механизм аутентификации предоставляет странице входа URL-адрес перенаправления, когда он обнаруживает, что пользователю необходимо войти в систему.

Другие вопросы по тегам