Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > группы пользователей


Автор: max07 31.1.2008, 16:42
Добрый день

Создаю систему в которой должны быть реализованы группы пользователей с разрешениями на то или иное действие в системе, не знаю с чего начать, как должна выглядить ДБ, как управлять группами с помощью php, какие вобще есть варианты решения? Никогда  с этим не сталкивался, так что любая инфо по теме будет уместна

Зарание спасибо всем ответившим

Автор: skyboy 31.1.2008, 16:45
ээээ.... ты не знаешь, что тебе надо реализовать или как писать код на PHP? не знаешь, как производить авторизацию(логин/пароль) или не в курсе, как эти логин пароль хранить в базе данных? 
может, задашь более конкретный вопрос?

Автор: max07 31.1.2008, 17:01
Как логинится я знаю, с простыми пользователями работал, теперь надо создать группы (Админ, Юзер и т.д.), присвоить группам разрешения, что то похожее как это работает в phpBB форумах

Автор: GeneralElectric 31.1.2008, 17:50
max07, предлагаю начать отсюда: http://www.google.com/search?q=PHP+ACL

Автор: max07 6.2.2008, 10:48
а нету попроще примеров?

Автор: MoLeX 6.2.2008, 10:55
max07 создаешь дополнительно поле со статусом пользователя (это могут быть числа: 1 - админ, 2 - модератор ...) При авторизации юзера узнаешь какой у него статус и потом какие возможности

Автор: DioNiR 6.2.2008, 18:50
Он наверное хочет чтобы группы можно было создавать самому и присваивать их пользователями.
Ну тута немного MoLeX прав. В таблице пользователей создаём ещё одно поле где будет хранится ID группы.
Создаём таблицу групп.
Тама долно быть ID - собственно по нему и будет определятся и различные формы типо дейсвий.
Типо Редактирования сообщений, просмотр сообщений и т.д И потом по ним и будешь считать.

Автор: max07 6.2.2008, 23:11
DioNiR, вот оно... не написал я что должна быть возможность создавать группы, простите... 
DioNiR, а мона поподробнее чутка?

Автор: Blaga 7.2.2008, 05:30
max07, а о чем тут подробнее. все легко. 
Лично я сделал так. У каждого пользователя в базе есть поле называеться groups там стоят числа от 1 до 3 
1 Админ 2 Модератор 3 Пользователь
Потом в скрипте я проверяю какое число у пользователя если 1 то показываем админу ссылку на админпанель иначе ничего не показываем. вот и все...

Автор: sTa1kEr 7.2.2008, 09:10
max07, почитайте http://php.russofile.ru/ru/translate/rights/phpgacl/, все расписано предельно просто на русском языке с аналогиями из звездных воин... Хоть это документация для phpgacl, но для общего понимания должно хватить.

Автор: DioNiR 7.2.2008, 10:15
sTa1kEr. вот вот. А я даж не знал что такое существует и думал сам smile
Вообще программирование такая штука что без логики в в неё ( этой штуке smile ) делать нечего.

Обьясню мой пример.

Есть 2 таблицы:
1. Пользователи.
2. Группы.

Первая таблица как ясно пользователи все формы которые в ней о пользователи и в этой же таблицы должно быть форма ид_группы. 
По этому ид мы и будем судить. Т.е смотртеь какой у него ид. Искать его в таблице 2 и уже потом смотреть что ему можно а что нет.

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

И вот пользователь открывает страницу где будут какие то дейсвия то вот тама ты смотришь какой ид_группы у этого пользователя, ищеш этот ид в таблице №2. И уже условиями выводишь то что ему можно а что нельзя.

Автор: frexin 24.4.2008, 13:31
Я думаю, что вам может помочь эта статья: http://webscript.ru/stories/08/01/21/8314693

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)