Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: projektowanie bazy danych
Forum PHP.pl > Forum > PHP
tukan
Witam,
Rozważmy taka rzecz:
Mam tabelę userów ( hasło, nazwa, itd.). Każdy user ma prawo stworzyć grupę ( ma też nazwę, id, itd.). I do takiej każdej stworzonej grupy może zapisać się każdy użytkownik. Jak teraz ładnie spiąć to w bazy danych? smile.gif
CuteOne
users [tabela użytkowników]
|
conn_users_groups [tabela łącząca użytkowników z grupami - wiele do wielu]
|
groups [tabela grupy]

  1. SELECT g.group_name, u.user_name
  2. FROM
  3. users u
  4. LEFT JOIN conn_users_groups cup ON (u.user_id = cup.user_id)
  5. LEFT JOIN groups g ON (cup.group_id = g.group_id)
  6. WHERE
  7. u.user_id = 11


Zapytanie możesz rozszerzyć o grupowanie grup po ich rodzajach itp. itd smile.gif lub odwrócić zapytanie tak aby pobierało np. użytkowników z grupy o id = 1.
tukan
conn_users_groups [tabela łącząca użytkowników z grupami - wiele do wielu]
ja tą tabelkę mam tak:
id_grupy ( PRIMARY), id_user( PRIMARY), uprawnienie. To uprawnienie, to ma mi określić poziom przywilejów, jakie mają użytkownicy w określonej grupie. Może tak być?
Tylko jak to sprawdzać. Np. zalogowany user o id= 48 jest w grupie o id 52. Wykonuje jakąś operację, jak sprawnie sprawdzić za pomocą zapytania, czy ma do tego uprawnienia?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.