Подскажите в какую строну смотреть, помогите реализовать. Зараннее спасибо.
Спустя 7 минут, 5 секунд (16.12.2009 - 22:24) VolCh написал(а):
Если серьезно подходить, то гугли на тему ACL (Access Control List), например вот реализация на PHP http://phpgacl.sourceforge.net/
Если "на раз", то в каждый скрипт вставляй сначала проверку на аутентификацию пользователя (если нет - ридерект на форму), потом имеет ли его группа права выполнять это скрипт (или этот скрипт с такими-то параметрами)
Если "на раз", то в каждый скрипт вставляй сначала проверку на аутентификацию пользователя (если нет - ридерект на форму), потом имеет ли его группа права выполнять это скрипт (или этот скрипт с такими-то параметрами)
Спустя 7 часов, 11 минут, 33 секунды (17.12.2009 - 05:35) NewBePhp написал(а):
denis39
ну если уж совсем простое то вот те пища для ума:
в первой таблице создаешь наименование пользователей + туда и админов и модеров засовываеш... например:
имя_id | право 1 | право 2 | право 3 | право 4
--------------------------------------------------------
1_________1 ________1_______1 ______1.____
2 _________1 ________1_______1 ______0.____
3 _________1 ________1_______0 ______0.____
4 _________1 ________0_______0______0.____
сорри что так .. я люблю рисовать...
вот это таба по основным правам...
потом в табе пользователей создаеш столбец прав... и пишеш если админ то 1 если гость то 4...
если тебе нужно чтоб каждые индивидуальными пользовался то надо уже индивидуально для каждого составлять табу... и советую перед тем как что то делать начни делать с конца ... представь себе как будет выглядеть все это и все получ... а чужие советы мало че дают если сам не фурычиш
ну если уж совсем простое то вот те пища для ума:
в первой таблице создаешь наименование пользователей + туда и админов и модеров засовываеш... например:
имя_id | право 1 | право 2 | право 3 | право 4
--------------------------------------------------------
1_________1 ________1_______1 ______1.____
2 _________1 ________1_______1 ______0.____
3 _________1 ________1_______0 ______0.____
4 _________1 ________0_______0______0.____
сорри что так .. я люблю рисовать...
вот это таба по основным правам...
потом в табе пользователей создаеш столбец прав... и пишеш если админ то 1 если гость то 4...
если тебе нужно чтоб каждые индивидуальными пользовался то надо уже индивидуально для каждого составлять табу... и советую перед тем как что то делать начни делать с конца ... представь себе как будет выглядеть все это и все получ... а чужие советы мало че дают если сам не фурычиш
Спустя 1 час, 28 минут (17.12.2009 - 07:03) qpayct написал(а):
Во первых надо понять сколько уровней в проэкте:
1-ый: картинки.
2-ой: каменты.
+ вот скажем модератор картинок не может изменять каменты, а следовательно у нас уже 2 вида модераторов + пахан и простые юзвери итого 4.
Тоесть 2 вида доступов(просмотр, редактирование) на 2 уровня(картинки, каменты).
1-2+2-2 доступ пахана
1-2+2-1 доступ модератора картинок
1-1+2-1 доступ юзверя
1-1+2-2 доступ модера каментов
+ разделяет уровни, а - разделяет уровень и доступ.
1-ый: картинки.
2-ой: каменты.
+ вот скажем модератор картинок не может изменять каменты, а следовательно у нас уже 2 вида модераторов + пахан и простые юзвери итого 4.
Тоесть 2 вида доступов(просмотр, редактирование) на 2 уровня(картинки, каменты).
1-2+2-2 доступ пахана
1-2+2-1 доступ модератора картинок
1-1+2-1 доступ юзверя
1-1+2-2 доступ модера каментов
+ разделяет уровни, а - разделяет уровень и доступ.
Спустя 40 минут, 28 секунд (17.12.2009 - 07:44) Alex VoDevil написал(а):
Ну на мой взгляд самое простое и быстрое при дальнейшем юзании скрипта:
Добавить в табличку с пользователями колонку group_id, Далее создать табличку %prefix%_groups:
id | acces1 | acces2 | acces3
Естественно проверять авторизирован ли пользователь, а потом, при попытке доступа к закрытым частям\функциям сайта выбирать "... WHERE(id = group_id)". Это если закрытых частей\функций на ресурсе мало. А если при обращении почти к каждой страничке нужно права смотреть, то можно acces1 | acces2 | acces3 прямо в таблицу пользователей дописать.
Добавить в табличку с пользователями колонку group_id, Далее создать табличку %prefix%_groups:
id | acces1 | acces2 | acces3
Естественно проверять авторизирован ли пользователь, а потом, при попытке доступа к закрытым частям\функциям сайта выбирать "... WHERE(id = group_id)". Это если закрытых частей\функций на ресурсе мало. А если при обращении почти к каждой страничке нужно права смотреть, то можно acces1 | acces2 | acces3 прямо в таблицу пользователей дописать.
Спустя 1 час, 8 минут, 8 секунд (17.12.2009 - 08:52) denis39 написал(а):
Пасибо за советы, вечером буду реализовывать
Спустя 10 часов, 4 минуты, 31 секунда (17.12.2009 - 18:56) inpost написал(а):
Я делал для админки так:
Пользователю добавлял ещё по одной колонке с правами, права на новости, к примеру, с записью одной из: 0,1,2.
0 - нет прав
1 - частичные, можно добавлять, редактировать и удалять лишь те новости, которые сам человек добавил
2 - полные права.
А на странице проверял, что записано у пользователя в таблице (можно перенести это значение в сессию при авторизации, чтоб не обращаться к базе постоянно), и выводил необходимую операцию через if.
Пользователю добавлял ещё по одной колонке с правами, права на новости, к примеру, с записью одной из: 0,1,2.
0 - нет прав
1 - частичные, можно добавлять, редактировать и удалять лишь те новости, которые сам человек добавил
2 - полные права.
А на странице проверял, что записано у пользователя в таблице (можно перенести это значение в сессию при авторизации, чтоб не обращаться к базе постоянно), и выводил необходимую операцию через if.