![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 370 Pomógł: 43 Dołączył: 1.12.2007 Skąd: Kędzierzyn Koźle Ostrzeżenie: (0%) ![]() ![]() |
Robię sobie takiego cms'a na swoje potrzeby, i zastanawiam się jak do bazy wtsawić prawa userów...
![]() Załóżmy, jakiś user się loguje i admin może ustawić dla niego prawa np.: dodawanie newsów, dodawanie atrykułów itd. wiadomo o co chodzi. Teraz mam problem jak to powstawiać myślałem żeby w tabeli users powstawiać pola praw np. edit_news i przypisywać im wartości 1 gdy może i 0 gdy nie może, ale co jeśli tych praw będzie dużo?? ![]() To mój pierwszy projekt z wykorzystaniem bazy danych dlatego chciałem się was poradzić ![]() Ten post edytował krzywy36 26.03.2008, 23:15:51 -------------------- pretty as a shit.
|
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 174 Pomógł: 42 Dołączył: 22.07.2007 Skąd: /dev/random Ostrzeżenie: (0%) ![]() ![]() |
Cytat ale co jeśli tych praw będzie dużo? W czym to przeszkadza? Jeżeli zależy Ci na tym by do uprawnień używać tylko jednego pola danych to możesz zastosować iloczyn bitowy
A sume bitową zapisujesz np. do bazy danych. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 370 Pomógł: 43 Dołączył: 1.12.2007 Skąd: Kędzierzyn Koźle Ostrzeżenie: (0%) ![]() ![]() |
Kurcze ;/ nie za bardzo to czaje
![]() ![]() -------------------- pretty as a shit.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 209 Pomógł: 37 Dołączył: 27.02.2008 Skąd: Kwidzyn Ostrzeżenie: (0%) ![]() ![]() |
w jednej tabeli mozesz miec userów, w drugiej spis wsyztskich mozliwych uprawnien, a w trzeciej powiazania tych dwóch rzeczy, czyli id_usera i id_uprawnienia..
w ten sposob nie mnozysz ilosci kolumn (bo jesli ktos nie ma do czegos uprawnien, to nie dodajesz tego do tabeli powiazan), a i z pod sql'a łatwo to obsluzyc... Ten post edytował nitek 26.03.2008, 23:52:15 -------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 102 Pomógł: 10 Dołączył: 25.12.2005 Skąd: Ruda Śląska Ostrzeżenie: (0%) ![]() ![]() |
id_uprwnienia to chyba lepiej ustawic w skrypcie zeby nie tworzyc dodakowej tabeli i zrobic to takj jak przedstawil to artega
![]() -------------------- |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 370 Pomógł: 43 Dołączył: 1.12.2007 Skąd: Kędzierzyn Koźle Ostrzeżenie: (0%) ![]() ![]() |
A wie ktoś jak to wygląda w typowych cms'ach np. PHP fusion, Mambo, Joomla??
-------------------- pretty as a shit.
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 209 Pomógł: 37 Dołączył: 27.02.2008 Skąd: Kwidzyn Ostrzeżenie: (0%) ![]() ![]() |
id_uprwnienia to chyba lepiej ustawic w skrypcie zeby nie tworzyc dodakowej tabeli i zrobic to takj jak przedstawil to artega ![]() ja wychodzę z założenia, że co może zrobić baza, to niech robi baza - wolę nie obciążać skryptu - dobrze zbudowane zapytania lepiej rozwiążą sprawę.. ![]() -------------------- |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 370 Pomógł: 43 Dołączył: 1.12.2007 Skąd: Kędzierzyn Koźle Ostrzeżenie: (0%) ![]() ![]() |
Nitek, Twoje rozwiązanie będzie chyba najlepsze
![]() Z góry thx Odświerzam temat, mógłby ktoś napisać zapytanie aby wyciągnąć prawa usera?? Mam trzy tabele: users, rights i user_rights W users mam dane o userze w rights mam spis wszystkich praw a w user_rights mam id usera i id prawa z tabeli rights tabela user_rights wygląda mniej więcej tak: user_id | right_id ---------|---------- 1--------|----- 1 1--------|----- 2 1--------|----- 10 2--------|------ 3 2--------|------ 5 itd. jak wyciągnąć prawa usera o jakimś id?? Trzeba do tego chyba użyć JOIN ale nie wiem jak się tym posługiwać ;] Ten post edytował krzywy36 28.03.2008, 23:22:51 -------------------- pretty as a shit.
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 1 033 Pomógł: 125 Dołączył: 17.09.2005 Skąd: Żywiec Ostrzeżenie: (0%) ![]() ![]() |
A jak wygląda twoja tabela rights?
-------------------- "Sumienie mam czyste, bo nieużywane."
|
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 370 Pomógł: 43 Dołączył: 1.12.2007 Skąd: Kędzierzyn Koźle Ostrzeżenie: (0%) ![]() ![]() |
-------------------- pretty as a shit.
|
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 1 033 Pomógł: 125 Dołączył: 17.09.2005 Skąd: Żywiec Ostrzeżenie: (0%) ![]() ![]() |
Tak jak myślałem.
IMHO takie rozwiązanie jest bez sensu. Załóżmy że zwykły użytkownik w twoim CMSie będzie miał prawa do: - czytania artykułów - oceniania artykułów - komentowania artykułów - edytowania swoich komentarzy artykułów - kasowania swoich komentarzy artykułów - raportowania wszystkich komentarzy artykułów - czytania newsów - komentowania newsów - edytowania swoich komentarzy newsów - usuwania swoich komentarzy newsów - raportowania wszystkich komentarzy newsów - przeglądania downloadu - pobierania plików - oceniania plików - czytania shoutboxa - pisania w shoutboxie - używania emoticon w shoutboxie ... Jak widzisz sporo tego, a wymieniłem tylko kilka rzeczy, które na pewno będziesz chciał mieć w swoim CMSie. Przy każdej rejestracji nowego użytkownika będziesz musiał dodać kilkadziesiąt wierszy do tabeli users_rights. Lepiej będzie jak w tabeli rights będziesz trzymał grupy uprawnień, np.: Goście, Użytkownicy, Administratorzy. Wtedy po rejestracji nowego użytkownika wystarczy jeden wpis do tabeli users_rights wiążący go z grupą Użytkownicy. Nic nie będzie też stało na przeszkodzie, żeby dodać kilka grup Administratorów - każdą z innymi uprawnieniami. -------------------- "Sumienie mam czyste, bo nieużywane."
|
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 370 Pomógł: 43 Dołączył: 1.12.2007 Skąd: Kędzierzyn Koźle Ostrzeżenie: (0%) ![]() ![]() |
Nie mam doświadczenia w tworzeniu stron dlatego nie wiem jak ma baza danych wyglądać
![]() mógłbyś napisać jak te tabele userow i praw mają wyglądać?? -------------------- pretty as a shit.
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 217 Pomógł: 23 Dołączył: 2.12.2007 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Słownie to najlepiej tak:
Tabela użytkownicy -id -login -haslo -uprawnienia A kodem:
To tylko taki przykład, zależy jakie informacje chcesz przechowywać o użytkowniku... a uprawnienia to poprostu liczby, czyli 1- Admin 2- redaktor 3- zwykły user -------------------- Masz swoje mieszkanie i chcesz je wynająć? Sprawdź ofertę Zarzadządzanie Najmem
WRONA.IT - pozycjonowanie stron www.ecyklopedia.pl |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 16:07 |