Я прочитал довольно много сообщений, которые очень похожи на вопрос, который я собираюсь задать, но я просто хотел убедиться, что нет более изощренного способа сделать этот. Любые отзывы приветствуются.
Я хочу создать механизм, чтобы проверить, имеет ли вошедший в систему пользователь доступ к php-скрипту, который в настоящее время вызывается . Если так, сценарий продолжится; в противном случае сценарий просто не работает, используя что-то вроде die ('у вас нет доступа')
.
Я придумал два способа сделать это:
(предположим, что мой сеанс закодирован / работает нормально - т.е. я вызываю session_start (), правильно настраиваю переменные сеанса и т. Д.)
Определите глобальный сначала переменную, затем проверьте глобальную переменную в требуемом файле заголовка. Например:
Содержимое current_executing_script.php:
// роль, которую должен выполнять авторизованный пользователь, чтобы продолжить
Я придумал два способа сделать это:
(предположим, что мой сеанс закодирован / работает нормально - т.е. я вызываю session_start (), правильно настраиваю переменные сеанса и т. Д.)
Определите глобальный сначала переменную, затем проверьте глобальную переменную в требуемом файле заголовка. Например:
Содержимое current_executing_script.php:
// роль, которую должен выполнять авторизованный пользователь, чтобы продолжить
Я придумал два способа сделать это:
(предположим, что мой сеанс закодирован / работает нормально - т.е. я вызываю session_start (), правильно настраиваю переменные сеанса и т. Д.)
Определите глобальный сначала переменную, затем проверьте глобальную переменную в требуемом файле заголовка. Например:
Содержимое current_executing_script.php:
// роль, которую должен выполнять авторизованный пользователь, чтобы продолжить
$ roleNeedToAccessThisFile = 'r';
требуется 'checkRole.php'
Содержимое checkRole.php:
if ($ _SESSION ['user_role']! = $ RoleNeedToAccessThisFile) die ('нет доступа для вас');
Определите функцию в файле заголовка и вызовите функцию сразу после ее включения / требования:
Содержимое checkRole.php:
function checkRole ($ roleTheUserNeedsToAccessTheFile) {
return ($ _SESSION ['user_role'] == $ roleTheUserNeedsToAccessTheFile);
}
Содержимое current_executing_script.php:
требует 'checkRole.php';
checkRole ('r') or die ('нет доступа для вас');
Мне интересно, есть ли способ просто передать параметр в checkRole.php как часть конструкции include или require?
Заранее спасибо.