Вернуться на последнюю веб-страницу после входа в систему
Мне нужна помощь, чтобы выяснить, как разрешить пользователям, которые входят в систему, вернуться на страницу, на которой они находились, до отправки на страницу входа. Вот цитата из моего босса:
Иногда я забываю войти в систему и захожу на страницу, нажимаю и получаю уведомление о присоединении или входе в систему. Это нормально, но есть ли способ, как только я войду, чтобы открыть страницу, которую я пытался открыть до подписания в, вместо того, чтобы снова пройти всю навигацию?
Я использую 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-адрес перенаправления, когда он обнаруживает, что пользователю необходимо войти в систему.