Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> skOMplikowane wyciągniecie danych z bazy
Apo
post
Post #1





Grupa: Zarejestrowani
Postów: 426
Pomógł: 1
Dołączył: 2.10.2005

Ostrzeżenie: (0%)
-----


Witam
Ostatnio zaczełem pisać autoryzacje dla frameworka bardzo podobną do tej którą napisał Ludvik, bo moim zdaniem lepszej nie ma smile.gif

Struktura tabel wygląda tak:

users - (id, name, password): przechowuje dane o użytkownikach
user_groups(id, uid, gid): przechowuje przynależność danego użytkownika (uid, tabela users) do danej grupy z uprawnieniami (gid, tabela groups)
roles - (id, name): nazwa pojedyńczej roli
groups - (id, name): nazwy istniejących grup
group_roles(id, rid, gid): przechowuje role (rid, tabela roles) przypisane grupą(gid, tabela groups) (tylko identifikatory)

No i teraz chciałem pobrać dane konkretnego użytkownika z bazy, hasło, nick i role.
Czyli musze pobrać hasło, nick następnie odczytać jego przynależność do danej grupy i potem odczytać wszystkie role przypisane tej grupie. Zrobiłem takie coś:

  1. SELECT users.name, users.password, roles.name
  2. FROM users, user_groups, group_roles
  3. LEFT JOIN roles ON roles.id = group_roles.rid
  4. WHERE users.id = 1 AND user_groups.uid = users.id AND group_roles.gid = user_groups.gid


Ale to nie jest poprawne bo wyskakują mi nieodpowiednie role :/ Najlepiej jak zapytanie będzie bardzo wydajne.

Pozdrawiam Apo
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 23:25