Страница входа в PHP с перенаправлением на разные страницы в зависимости от уровня доступа пользователя - PullRequest
2 голосов
/ 13 августа 2011

Как я могу отправить переменные нескольких сессий на страницу?

Например, у меня есть страница login.php, которая проверяет электронную почту и пароль пользователя и уровень доступа (администратор, учитель, студент), хранящиеся в базе данных исоответственно предоставляет доступ к student.php, admin.php, faculty.php

На страницах student.php, admin.php и faculty.php я установил блоки сеансов, которые проверяют уровень пользователя, полученный с предыдущих страниц, иразрешает или запрещает доступ соответственно.

Пока это работает нормально, однако теперь я хотел бы создать определенную страницу для каждого пользователя, для которой мне нужно проверить уровень пользователя (admin, user, faculty>, который уже проверяется) + их конкретный идентификатор пользователя или адрес электронной почты, с помощью которого я мог бы генерировать определенный контент для них ..

Итак, возвращаясь к моему вопросу, есть ли способ отправить несколько переменных на страницу ??

Или, что более важно, если я не думаю о правильном пути, есть ли лучший способ сделать это?

Большое спасибо,

Ответы [ 2 ]

3 голосов
/ 13 августа 2011

Да.Просто объявите $_SESSION в виде массива.

$_SESSION["uid"] //User ID (mail whatever)
$_SESSION["access"] //Admin, student, teacher etc.

Справочник по справочнику

0 голосов
/ 13 августа 2011

использует сеансы лучший способ создать пользовательскую страницу ??

Сеансы (и лучше с безопасным cookie) хороши только для повторной идентификации запрашивающего пользователя.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...