Гриша К.
Новичок
Контроль доступа: сложности при распределение анкетных даных и прав для пользователей
Здравствуйте.
При организации контроля доступа пользователей на сайте (http://phpclub.ru/talk/showthread.php?s=&threadid=88278&rand=10), у меня возникли дополнительные сложности:
на сайте предполагается несколько групп пользователей,
имеющих общие данные: имя пользователя, e-mail, пароль
имеющих разные данные и права:
Администраторы - имеют только описанные выше данные, [могут иметь права просмотра скрытых разделов, добавления, редактирования и удаления информации].
Партнеры - дополнительно должны содержать ИД партнера (не ИД пользователя, а ИД данных о фирме парнера), в соответсвии с таблицей информации о партнерах (инфа.о фирме, условия доставки), [имеют права просмотра сделанных заказов данного партнера, изменения их статуса, комментирования заказов и инфы о товарах данного партнера]
Пользователи - дополнительно должны иметь Ф.И.О., адрес, телефон, [color=#66666][права только просмотр информации о сделанных ими заказах][/color].
Вопрос состоит в том, как правильно организовать структуру БД, для последующего правильного определения прав пользователей.
Например я создам общую таблицу для всех пользователей, которая будет содержать имя пользователя, e-mail, пароль, дату регистрации, дату последнего посещения,
но мне также необходимо чтобы пользователи группы партнеры могли иметь ИД фирмы партнера, а обычные пользователяи имели анкетные данные Ф.И.О., адрес телефон.
Структура моей БД представлена здесь http://phpclub.ru/talk/showthread.php?s=&threadid=88278&rand=10
Немогли вы подсказать, нормален ли такой вариант:
Делаю разные таблицы для 3-х групп пользователей, и соответсвенно разные формы авторизации.
Ранг так скажем пользователя будет определяться имененем переменной сессии:
- Администраторы - $_SESSION['user_admin'] (при инициализации этой переменной определяем права администратора на объекты: просмотр, добавление, редактирование, удаление).
- Партнеры - $_SESSION['user_partner'] (при инициализации этой переменной партнер может просматривать страницу заказов данной фирмы-партнера).
- Пользователи - $_SESSION['user_client'] (при инициализации этой переменной пользователь может просматривать страницу своих заказов).
Здравствуйте.
При организации контроля доступа пользователей на сайте (http://phpclub.ru/talk/showthread.php?s=&threadid=88278&rand=10), у меня возникли дополнительные сложности:
на сайте предполагается несколько групп пользователей,
имеющих общие данные: имя пользователя, e-mail, пароль
имеющих разные данные и права:
Администраторы - имеют только описанные выше данные, [могут иметь права просмотра скрытых разделов, добавления, редактирования и удаления информации].
Партнеры - дополнительно должны содержать ИД партнера (не ИД пользователя, а ИД данных о фирме парнера), в соответсвии с таблицей информации о партнерах (инфа.о фирме, условия доставки), [имеют права просмотра сделанных заказов данного партнера, изменения их статуса, комментирования заказов и инфы о товарах данного партнера]
Пользователи - дополнительно должны иметь Ф.И.О., адрес, телефон, [color=#66666][права только просмотр информации о сделанных ими заказах][/color].
Вопрос состоит в том, как правильно организовать структуру БД, для последующего правильного определения прав пользователей.
Например я создам общую таблицу для всех пользователей, которая будет содержать имя пользователя, e-mail, пароль, дату регистрации, дату последнего посещения,
но мне также необходимо чтобы пользователи группы партнеры могли иметь ИД фирмы партнера, а обычные пользователяи имели анкетные данные Ф.И.О., адрес телефон.
Структура моей БД представлена здесь http://phpclub.ru/talk/showthread.php?s=&threadid=88278&rand=10
Немогли вы подсказать, нормален ли такой вариант:
Делаю разные таблицы для 3-х групп пользователей, и соответсвенно разные формы авторизации.
Ранг так скажем пользователя будет определяться имененем переменной сессии:
- Администраторы - $_SESSION['user_admin'] (при инициализации этой переменной определяем права администратора на объекты: просмотр, добавление, редактирование, удаление).
- Партнеры - $_SESSION['user_partner'] (при инициализации этой переменной партнер может просматривать страницу заказов данной фирмы-партнера).
- Пользователи - $_SESSION['user_client'] (при инициализации этой переменной пользователь может просматривать страницу своих заказов).