• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Dostęp użytkownika do funkcjonalności na stronie zapisany w bazie danych - najlepsze rozwiązanie?

0 głosów
75 wizyt
pytanie zadane 25 lutego 2016 w SQL, bazy danych przez CzlowiekSkrypt Nałogowiec (26,810 p.)
Chciałbym żeby dany użytkownik miał dostęp tylko do niektórych rzeczy na stronie, autoryzację chcę trzymać w bazie danych bo wydaje mi się to najprostszym rozwiązaniem aczkolwiek mam taką rozkminę:

Mój pierwszy pomysł:
W tabeli users zrobić kilka kolumn func1, func2, func3, func4  i siedziałoby tam 0 albo 1.

2 Pomysł
Zrobić jedną kolumnę np 'access' w tabeli users i trzymać tam string np '1425', przy wyciąganiu rozbić to i każda liczba oznacza dostęp do konkretnej funkcjonalności. Potem można UPDATE'M dopisać 3 i wskakuje nowe uprawnienie :)

3 Pomysł
osobna tablica access z relacją do tabeli users i tam wpakować func1 func2 func3 func4 etc

To dobre rozwiązania? Jeśli nie liczę na wasze ciekawe pomysły  :)

3 odpowiedzi

+1 głos
odpowiedź 25 lutego 2016 przez Magicone Nałogowiec (44,940 p.)
3 przedstawia się najsensowniej. W razie edycji uprawnień możesz szybko coś zmienić.
komentarz 25 lutego 2016 przez CzlowiekSkrypt Nałogowiec (26,810 p.)
Też mi się tak właśnie zdaje, nie będzie bałaganu wtedy :)
+1 głos
odpowiedź 25 lutego 2016 przez Bantu Nałogowiec (33,690 p.)
Nie wiem co chcesz wykombinować ale rozwiązanie z mojej perspektywy jest banalne. Robisz tabele z użytkownikami, robisz tabelę z funkcjami, które może posiadać użytkownik. W tabeli z funkcjami będą trzymane de facto tylko flagi. Więc robisz sobie powiązanie powiedzmy jeden do jednego. I w każdej chwili możesz sobie możesz sobie sprawdzać czy dany użytkownik posiada daną funkcjonalność z drugiej tabeli, Mniej więcej będzie to działać na podobnej, a raczej na takiej samej zasadzie jak napisałeś w pkt. 1. Ale będzie łatwiejsze w modyfikowaniu i ogólnie ładniejsze ;)

PS Sorry, w sumie to rozwiązanie opisałeś w pkt. 3, a nie 1 ;)
+1 głos
odpowiedź 25 lutego 2016 przez gromula Stary wyjadacz (10,150 p.)

 

Pamiętaj aby zrobić to w cache bo nie potrzebnie będziesz obciążał serwer odpytując ją o każde wejście do strony


 

komentarz 26 lutego 2016 przez CzlowiekSkrypt Nałogowiec (26,810 p.)
Dobra sugestia ! :)

Podobne pytania

0 głosów
1 odpowiedź 106 wizyt
pytanie zadane 25 marca 2016 w SQL, bazy danych przez CzlowiekSkrypt Nałogowiec (26,810 p.)
0 głosów
3 odpowiedzi 118 wizyt
pytanie zadane 17 października 2018 w SQL, bazy danych przez Greeenone Stary wyjadacz (12,190 p.)
0 głosów
1 odpowiedź 65 wizyt
Porady nie od parady
Zadając pytanie postaraj się o odpowiedni tytuł, kategorię oraz tagi.Tagi

64,924 zapytań

111,391 odpowiedzi

234,424 komentarzy

46,754 pasjonatów

Przeglądających: 244
Pasjonatów: 11 Gości: 233

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...