[PHP]Wartość False dla zmiennych deklarowanych z poza klasy


(system) #1

Witam mam problem, otóż:

Mam sobie obiekt $silnik, i teraz generuje sobie drzewko w uprawnieniami w strukturę:

$silnik->uprawnienia->admin->news

Teraz mam problem ponieważ wartość True/False dla news generuje na podstawie bazy, ale jeśli w kodzie podstawie zamiast news inny tekst którego niema w bazie to zwracana jest wartość True:(

Ma ktoś może jakieś względne pojęcie jak to zmienić?


(Airborn) #2

Ja mam pomysł, przemyśl wszystko jeszcze raz to, bo to co robisz wydaje się pogwałcać wszystkie zasady OOP. Co w ogóle chcesz osiągnąć?


(system) #3

Więc tak, chcę stworzyć obiekt który będzie reprezentował użytkownika, czyt: informacja o uprawnieniach, ustawienia...

i teraz myslałem zeby stworzyc subobiekt zawierajacy uprawnienia, a ten z kolei dwa nastepne (user,admin), które będą zawierały info. co użytkownikowi wolno a co nie.


(Airborn) #4

ja to zawsze rozwiązywałem w ten sposób, że w bazie danych użytkownik miał zapisywany access_level (poziom dostępu) i teraz w zależności od poziomu dostępu różne kontrolery udostępniały mu różne akcje (tak jak działają chmod pod linuxem, przykładowo użytkownik od access_level >= 100 może edytować newsy, ale nie usuwać i dodawać nowe może dopiero ten z access_level >= 200). prawdę powiedziawszy Twojego sposobu nie rozumiem, za bardzo, bo z tego co mówisz, to wynika że obiekt użytkownika zawierać będzie obiekt uprawnień z obiektem administatora... to takie masło maślane trochę...