СКРИПТЫ
ТЕГИ:
php (282)
js (144)
html (132)
css (99)
html tags (58)
jquery (39)
edit text (37)
php array (30)
form html (29)
fonts (22)
foto (21)
forum (19)
ruweb.net (19)
atom (19)
html book (17)
board (17)
Показать еще :
php file (16)
js method (16)
hosting (16)
svg (16)
link (15)
htaccess (13)
osclass (13)
color (13)
table (12)
path (12)
php date (11)
online (11)
yandex (11)
js delete (11)
icon (11)
jsphp (11)
input (11)
notepad (11)
form (10)
php img (10)
url (10)
mouse (9)
info (9)
img (7)
cookie (7)
comment (7)
task (7)
ftp (7)
php url (7)
dosite (6)
click (6)
hover (6)
js url (6)
reg.ru (5)
chart (5)
php get (5)
adminka (5)
value (5)
mb (5)
js id (4)
bbcode (4)
submit (4)
js form (4)
browser (4)
select (4)
search (4)
js copy (4)
iframe (4)
symbols (4)
captcha (3)
https (3)
js post (3)
vk (3)
scandir (3)
js time (3)
ssl (3)
vs code (3)
height (2)
details (2)
youtube (2)
tag hr (2)
sitemap (2)
title (2)
ukoz (2)
cursor (2)
console (2)
seo (2)
js vars (2)
video (2)
smile (1)
windows (1)
numbers (1)
archive (1)
header (1)
books (1)
domen (1)
padding (1)

Распределение ролей на сайте с примерами

Что такое роль на сайте, роли пользователей на сайте. какие роли бывают, как исполнить код для каждого типа ролей на сайте!

Как вы наверное уже догадались, у пользователя может быть несколько ролей на сайте! В зависимости от того, как написан код!

О ролях пользователя на сайте

  1. Что такое роль пользователя нка сайте
  2. Как присваивать права пользователя!?
  3. Как присваивать права пользователя из базы данных!?
  4. Как присваивать права пользователя из файла!?

  1. Что такое роль пользователя на сайте

    Определение "Что такое роль пользователя на сайте":

    Роль пользователя на сайте определяется создателем сайта(программистом, движком) прописанными ранее в коде.

    В зависимости от этой роли, к которой принадлежит пользователь ему доступны соответствующие возможности!

    Какие роли пользователей бывают на сайте!?

    На простом сайте может быть ... например всего две роли:

    Администратор

    Гость

    Я бы принимал для сайта... классический список ролей для пользователя:

    Администратор

    Модератор

    Пользователь

    Гость


  2. Как присваивать права пользователя!?

    Естественно, что должен быть какой-то скрипт, который реализует роли пользователя на сайте.

    1). Как реализовать права пользователя самым простым способом!?

    Для каждого типа пользователя нужно выделить отдельную сессию:

    $_SESSION['admin'] -> Администратор

    $_SESSION['moderator'] -> Модератор

    $_SESSION['user'] -> Пользователь

    $_SESSION['guest'] -> Гость

    2). Как присваивать входящему в систему ту роль, которая ему принадлежит!?

    Следующий вопрос, который должен возникнуть у вас :

    Каким образом скрипт будет определять, что это заходит Администратор или Модератор и.т.д!?

    Все просто!

    Когда один из пользователей системы будет авторизовываться, то система должна извлечь роль, из того носителя, где эта роль для него прописана! Носитель, может быть базой данных, либо файлом.

    3). Как прописать возможности для каждой роли на сайте в php

    Далее нам нужно создать условие/условия для каждой роли на сайте:

    if ($_SESSION['admin'])

    {

    При выполнении этого условия, должен располагаться, код, контент доступный только "Администратору"

    }

    elseif ($_SESSION['moderator'])

    {

    При выполнении этого условия, должен располагаться, код, контент доступный только "Модератору"

    }

    elseif ($_SESSION['user'])

    {

    При выполнении этого условия, должен располагаться, код, контент доступный только "Пользователь"

    }

    else

    {

    И все что осталось... это роль "Гостя"

    }


  3. Как присваивать права пользователя из базы данных!?

    Реализовать можно по разному, но алгоритм он будет и в "Африке" алгоритм!

    У вас, как у администратора сайта должен быть способ занесения в базу данных пользователей метки роли для пользователя!

    И каждому пользователю, которому требуются добавить или изменить роль добавляем, ну например численное значение:

    Администратор =1

    Модератор=2

    Пользователь=3

    Как присваивать права пользователя из базы данных!?
    Как присваивать права пользователя из базы данных!?

    При авторизации запуск роли пользователя

    Когда пользователь регистрируется, проверяем не только пароль с логином, но и поле роль, в котором была установлена роль пользователя.

    Создаем условие, если роль равна одному из приведенных чисел, по этому условию запускаем сессию:

    if( [ячейка роль] == 1 ) { $_SESSION['admin'] =1; }

    if( [ячейка роль] == 2 ) { $_SESSION['moderator'] =1; }

    if( [ячейка роль] == 3 ) { $_SESSION['user'] =1; }

    P.S.

    Не обязательно распределять роли таким образом....

    Это просто пример!


  4. Как присваивать права пользователя из файла!?

    Присваивание ролей можно реализовать и с помощью файла.

    Т.е. алгоритм будет аналогичный, что выше описанным способом, только данные по пользователям и ролям будут занесены в отдельный файл!

    О файле с ролями пользователя

    И да... в одном файле могу храниться данные, самое малое... лично проверял 500 000 строк... без проблем..(см. по размеру... 500 000 вышло примерно 10мб)

    Если предполагается пользователей больше чем 500 000 распределите по первой букве и 10 цифрам это будет (28 + 10)* 500 000 = 19 000 000

    Т.е. пользователи, емайл которого начинается с буквы "a" будет находится в файле "a.dat"и т.д.

    Если этого будет недостаточно, то распределяйте по первым двум знакам:

    ((28 + 10)*(28 + 10))* 500 000 = 722 000 000 <- и т.д.... wall

    Как записывать в файл права пользователя

    В файле можно хранить ассоциативный массив
    [email] => [роль]

    Пример массива с правами пользователя и функцией записи:

    $array_role = array (

    "admin@mail" => 1,

    "moderator@mail" => 2,

    "user@mail" => 3

    );

    file_put_contents("example_file.dat" , serialize ( $array_role ));

    Проверка прав пользователя и запись в сессию:

    Теперь нам нужно получить массив, и в условии проверяем полученный из поля ввода методом post получаем емайл пользователя -> $_POST['email'] и в зависимости от результат присваиваем пользователю роль...

    $array_role = unserialize(file_get_contents('example_file.dat'));

    if( $array_role[ $_POST['email'] ] == 1 ) { $_SESSION['admin'] =1; }

    if( $array_role[ $_POST['email'] ] == 2 ) { $_SESSION['moderator'] =1; }

    if( $array_role[ $_POST['email'] ] == 3 ) { $_SESSION['user'] =1; }

Пользуйтесь на здоровье! Не забудьте сказать спасибо
Теги :
роли пользователей
роли пользователей сайта
роли пользователей системы
описание ролей пользователей
роли доступа пользователя
пользователь группа роль
создание роли пользователя
роли пользователей баз данных
sql роли пользователя
пользователь c ролью
управление ролями пользователей
роль профиль пользователя
роле пользователи
роль нового пользователя
проверить роль пользователя
роли пользователей настройка
роли пользователей и права доступа
как добавить роль пользователю
создание ролей пользователей на сайте php
распределение ролей на сайте

Сообщение системы комментирования :

01.09.2021

Форма пока доступна только админу... скоро все заработает...надеюсь...

Последние комментарии :
Марат :
17.10.2021 39:28
Давно не делал и страницу и видео в один день... чет, как-то выжитый как…
подробнее.
Марат :
10.10.2021 17:20
Добавлен новый смайл
подробнее.
Марат :
05.10.2021 26:37
Страница sitemap.html восстановлена. Но будут вводиться только страницы…
подробнее.
Марат :
04.10.2021 38:22
Добавил несколько вариантов поставить смайл на страницу своего сайта! 3 варианта! Кроме варианта скачать…
подробнее.
Марат :
17.09.2021 28:02
Установка Яндекс поиск на сайт! Контент обновлен на 100%. Такое ощущение, что старый текст не я…
подробнее.
Марат :
07.09.2021 23:21
Частенько приходится исправлять ошибки и вот...как-то я обратил внимание на надпись: "нажми ctrl enter" на сайте и…
подробнее.
ruweb