![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 120 Pomógł: 0 Dołączył: 9.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam. Chciałbym stworzyć klasę użytkownika, która bdzie zawierała wszystkie dane z tabeli 'uzytkownik'. Pierwszy raz to robię i chciałbym stworzyc taki efekt:
Kod if ($uzytkownik['rank'](lub $uzytkownik -> rank) !="Admin") { echo 'Nie jesteś Adminem!'; } Zmienna $uzytkownik by zawierała ta klasę i wskazywała ID użytkownika który jest aktualnie zalogowany. Próbuję to zrobic w taki sposób: Kod class Uzytkownik { var $user; var $id; var $rank; Teraz gorzej z funkcją. Wzoruje się na klasie z silnika gry Vallheru, gdzie bazuje tam smarty i szablony. Kod function Player($pid) { global $db; $stats = $db -> Execute("SELECT * FROM players WHERE id=".$pid); $this -> user = $stats -> fields['user']; Powyższy kod to kawałek klasy z owego silnika. Jak mogę napisać taką klasę, aby uzyskać tamten efekt? Co zawiera zmienna $pid? Bo próbuje to zrobić lecz mi nie wychodzi. Ten post edytował Loped 18.05.2009, 15:26:48 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Cytat Próbuję to zrobic w taki sposób: Mamy PHP5, więc nie stosuj PHP4.Kod class Uzytkownik { var $user; var $id; var $rank; Cytat Teraz gorzej z funkcją. Wzoruje się na klasie z silnika gry Vallheru, gdzie bazuje tam smarty i szablony. Na podstawie 5 linii kodu jakie widzę moge powiedzieć... nie wzoruj się na tym.1) Jeżeli chcesz mieć coś w stylu: Czyli by móc się odwoływać do obiektu jak do tablicy, klasa User musi implementować interface ArrayAccess. Chociaż IMO lepiej by było jakby klasa udostępniała zestaw getterów Oczywiście może udostępniać gettery oraz implementować ArrayAccess jednocześnie. Klasa User wg mnie powinna reprezentować każdego użytkownika - również niezalogowanego - tak więc proces autoryzacji mógłby u Ciebie wyglądać tak. Oczywiście wcześniej przeprowadzasz cały proces walidacji danych, logowania, by ostatecznie przekazać jeden parametr z id użytkownika. Klasa w swoim wnętrzu pobierze odpowiednie dane, które będą przechowywane w sesji. |
|
|
![]()
Post
#3
|
|
Developer Grupa: Moderatorzy Postów: 3 045 Pomógł: 290 Dołączył: 20.01.2007 ![]() |
Proszę dodać tag w tytule, w innym wypadku wątek zostanie zamknięty.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 10:29 |