![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 821 Pomógł: 111 Dołączył: 11.09.2006 Skąd: Biała Podlaska Ostrzeżenie: (0%) ![]() ![]() |
Sytuacja wygląda następująco, napisałem wcześniej niedużą stronę żeby podszkolić się w PHP, niestety pisałem wszystko na funkcjach. Po moim ostatnim temacie postanowiłem napisać wszystko od początku, już na obiektach. Jakoś nie mogę się do tego przyłożyć i zrozumieć. Czego nie napiszę wyskakuję błąd:
Cytat Fatal error: Access to undeclared static property: user::$setting in /home/rysh/public_html/class/user.class.php on line 13 Chciałbym zacząć od rejestracji, jeśli miałbym przykład dobrze wykonanej działającej funkcji później bym miał z górki, ponieważ mógłbym się wzorować na niej. Niestety już ta pierwsza sprawia mi problemu. Posiadam również książkę "PHP5, radocha z programowania" z Helionu Steven'a Holzner'a - jednak tam jest opisane jak utworzyć Lwa oraz go wyświetlić. W rejestracji potrzebuje również sprawdzić przecież czy $login oraz reszta spełnia wszystkie wymagania, a tego już tam nie ma. Prawdopodobnie już teraz mam jakieś rażące błędy, proszę o jakieś nakierowanie mnie, abym w końcu mógł zacząć czerpać radość z programowania obiektowego ![]() Rysh. -------------------- |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
@up herezje mowisz przy static ma dac $this -> idz poczytaj najpierw manual.
W klasie masz pole statyczne $settings a odwolujesz sie do $setting i tam masz blad.
Ten post edytował marcio 6.03.2010, 13:22:20 -------------------- Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/ Moj blog |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 1 429 Pomógł: 195 Dołączył: 6.10.2008 Skąd: Kraków/Tomaszów Lubelski Ostrzeżenie: (0%) ![]() ![]() |
Rysh, napisz sobie też prostą klasę do wypluwania komunikatów (taki mini widok), bo wyjątków do wszystkich komunikatów się nie stosuje raczej, jak sama nazwa wskazuje, jest to wyjątek.
A co do mniejszych rzeczy, to może wczytaj np. w konstruktorze ustawienia, które miałbyś w osobnym pliku np. config.php, zamiast tworzyć tablicę statyczną. Ten post edytował MateuszScirka 6.03.2010, 13:27:25 -------------------- O! Zimniok :P
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
- nie lepiej zwracać klasę komunikatu oraz jego id? Treść komunikatu to już sprawa bardziej interfejsu, czyli widoku. No i login chyba będzie sprawdzany nie tylko tutaj? Może jakaś klasa do walidacji? Przemyśl to na spokojnie, rozrysuj na papierze, zrób schemat co ma być w czym i co ma robić. I radość czerpie się z dobrego programowania, każdy kod można spitolić, zamykanie kodu w klasach nie gwarantuje, że ktoś na jego widok nie dostanie palpitacji serca ![]() |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 450 Pomógł: 84 Dołączył: 27.11.2008 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Poza tym, powinno się unikać stosowania bloku try-catch wewnątrz klasy, w metodzie rzuć tylko wyjątek, metodę uruchom w sekcji "try", poza klasą. przykład:
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 04:07 |