У меня возникла проблема с PHP, поскольку я пытаюсь написать программу, которая перенаправляет пользователя на предыдущую страницу (membersOnly.php). Вот код, который в настоящее время не работает для меня.Как предоставить доступ определенным пользователям с помощью PHP
$sess = $_SESSION['sess_username'];
if ($sess == "admin") {
return;
} else {
header("Location: membersOnly.php");
}
Моя попытка разрешить пользователю «admin» на странице admin.php. Этот код запускается первым. [ «Sess_username»] переменный $ _SESSION назначаются в login.php со следующим кодом:
session_start();
$_SESSION['sess_username'] = $_POST['user'];
header("Location: membersOnly.php");
Теперь я знаю, что я правильно настроить имя пользователя сеанса, потому что в любых страницах я выбираю, я могу использовать эхо $ _SESSION [ 'sess_username']; и он отображает имя пользователя. Но я не уверен, что я делаю неправильно, когда пытаюсь отправить пользователя обратно членам membersOnly.php, если их имя пользователя не является администратором. В настоящее время, когда я пытаюсь перейти на эту страницу, он запрещает доступ любому пользователю, включая администратора.
[EDIT: SOLVED] Я забыл добавить session_start(); в верхней части страницы.
ОК, похоже, что вы вызываете 'return;', что, скорее всего, просто возвращает пустую страницу. Попробуйте изменить его на 'die ('IM AN ADMIN');' и 'die ('IM NOT ADMIN');' для начала и посмотреть, какие результаты вы получите. –
нет, это не так, но спасибо за указатель @Danbopes – user3670816
Что значит «это не он»? Что вы получаете? Показывает ли он «IM AN AD» или «IM NOT ADMIN»? –