1
  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
Приветствуем вас,Гость, на форуме IFUD.WS. Обязательно рекомендуется к прочтению правила форума http://ifud.ws/threads/obnovleno-pravila-foruma.7759

Как сформировать запрос к базе (многие ко многим)

Тема в разделе "Программирование", создана пользователем psfdek, 16 июн 2014.

  1. TopicStarter Overlay
    psfdek

    psfdek

    Регистрация:
    19 дек 2013
    Сообщения:
    40
    Симпатии:
    31
    Есть 3 таблицы:
    [​IMG]
    Как узнать есть ли у данной роли определенный доступ?
    например роль с ИД=2 есть ли у неё доступ к редактированию.
     
    Метки:
  2. BloodWolf

    BloodWolf Команда форума

    Регистрация:
    29 май 2012
    Сообщения:
    425
    Симпатии:
    360
    select * from Роли, Доступы, Роль_Доступ where Роли.id_role = "2" and Роли.id_role = Роль_Доступ.id_role and Роль_доступ.id_access = Доступы.id_access and Доступы.name_access = "edit" GROUP BY Роли.name_role
    Вроде так, давно не юзал оракл.
     
    • Like Like x 2
  3. djniktih

    djniktih

    Регистрация:
    21 июн 2013
    Сообщения:
    415
    Симпатии:
    241
    SELECT * FROM `table` WHERE `id_access` = 2 AND `name_access` = 'edit'
    Потом проверяй
    if (mysql_fetch_assoc($query)['id_access'] == 2) { return true; }
     
    • Like Like x 1
  4. TopicStarter Overlay
    psfdek

    psfdek

    Регистрация:
    19 дек 2013
    Сообщения:
    40
    Симпатии:
    31
    PHP:
    SELECT worker_access_name FROM TMs_workers LEFT JOIN TMs_workers_roles ON worker_role=worker_role_name LEFT JOIN TMs_workers_accesses_of_role ON TMs_workers_roles.worker_role_id=TMs_workers_accesses_of_role.worker_role_id LEFT JOIN TMs_workers_accesses ON TMs_workers_accesses_of_role.worker_access_id=TMs_workers_accesses.worker_access_id WHERE worker_id=1
    Уже нашел ответ.
     

Поделиться этой страницей

Загрузка...