![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
![]() Grupa: Developerzy Postów: 823 Pomógł: 12 Dołączył: 18.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
Klasa zlicza ile jest userów on-line. Opiera się na MySQL, w tabeli są przypisywane kolejno numery IP oraz czas wygaśnięcia sesji (time() + 180). Jak sesja kolesia się skończy, rekord zostaje usunięty i liczna online spada...
http://dyzio.nowiny.pl/bin/sources/online.class.txt Jest to moja pierwsza klasa w php więc się nie śmaic ![]() Jak macie jakieś uwagi/sugestie (a takie będą bo noobie w OOP - 1 klasa ![]() ![]() oceniać ![]() Ten post edytował Athlan 19.07.2006, 08:41:46 -------------------- Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Do oceny mamy forum oceny. Przenosze
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 740 Pomógł: 15 Dołączył: 23.08.2004 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Deklarujac wlasciwosci klasy w PHP5 nie uzywa sie slowa var tylko, podobnie jak w przypadku metod, nazwy wlasciwosci poprzedza sie slowami public, private lub protected.
Metody, ktore nie korzystaja z wlasciwosi obiektu i maja charakter publiczny, jak np encodeIP i getIP zrob najlepiej statycznymi. Nazwy klas pisane sa zwykle wielkimi literami. Poczytaj tez na temat phpDocumentatora i komentowania kodu. To tylko szczegol, ale podawanie w komentarzu nazwy metody bezposrednio nad nia jest niepotrzebne. To tyle na poczatek Ten post edytował bigZbig 19.07.2006, 09:07:29 -------------------- bigZbig (Zbigniew Heintze) | blog.heintze.pl
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Developerzy Postów: 823 Pomógł: 12 Dołączył: 18.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
Dobrze @bigZbig, zastosowałeś się do Twoich uwag
![]() choć metodę getIP() pozostawie publiczną, bo może ona zostac wykorzystana nie tylko w klasie... taki mam zamiar Dzięki za uwagi... script updated: http://dyzio.nowiny.pl/bin/sources/online.class.txt prosze o kolejne uwagi/porady btw: jak na 1 raz to dobrze? ![]() Ten post edytował Athlan 19.07.2006, 09:51:09 -------------------- Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij |
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat choć metodę getIP() pozostawie publiczną, bo może ona zostac wykorzystana nie tylko w klasie... taki mam zamiar No i wlasnie dlatego powinna byc statyczna.Cytat Dobrze @bigZbig, zastosowałeś się do Twoich uwag Albo sciemniasz, albo podales zly link, bo ja nie widze abys cos dostoswal sie do uwag bigZbiga. Na czym polegalo Twoje dostosowanie sie?edit: choc moze kluczem do zagatki jest to slowo: "zastosowałeś" no tak, bigZbig sam sie dostosowal do swoich uwag ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#6
|
|
![]() Grupa: Developerzy Postów: 823 Pomógł: 12 Dołączył: 18.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat No i wlasnie dlatego powinna byc statyczna. dobra poprawiłem... Cytat Albo sciemniasz, albo podales zly link, bo ja nie widze abys cos dostoswal sie do uwag bigZbiga. nie widzisz? - poprawiłem deklarację zmiennych na początku (dodalem private) - z opisów usunąłem nazwy funkcji (fakt... po co to) - static function encodeIP() - class ONLINE - nazwa klasy z wielkich liter - no i teraz dałe static na getIP() @nospor - możliwe że patrzyles na klasę wcześniej i nie odświeżyłeś strony jak ja zobaczyłeś po raz drugi (cache)... wyczyść sobie cache i daj f5 albo wejdź z np badzIEwia (lol) a potem na mnie krzycz bo mi się smutno zrobiło ![]() pozdro ![]() Ten post edytował Athlan 19.07.2006, 10:20:08 -------------------- Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 245 Pomógł: 4 Dołączył: 22.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat - class ONLINE - nazwa klasy z wielkich liter Tu nie chodzi o to aby cała nazwa była z wielkich liter tylko aby pierwsza litera była duża ![]() Pozdrawiam |
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat @nospor - możliwe że patrzyles na klasę wcześniej i nie odświeżyłeś strony jak ja zobaczyłeś po raz drugi (cache)... wyczyść sobie cache i daj f5 albo wejdź z np badzIEwia (lol) a potem na mnie krzycz bo mi się smutno zrobiło cache czyscilem (sprawdzalem nawet), badziewia nie mam zamiaru uzywac bo to badziewie, krzyczec nie krzyczalem wiec przykro niech ci sie nie robi. Grzecznie zapytalem tylko ![]() Podsumowujac: teraz widze zmiany, wtedy ich nie widzialem. Z poprawek o jakich wspomnial bigZbig brakuje jeszcze wlasiwych komentarzy na wzor phpDoc. Te Twoje dziwnie sie czyta jak sie czlowiek przyzwyczail juz do standardu ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#9
|
|
![]() Grupa: Przyjaciele php.pl Postów: 698 Pomógł: 3 Dołączył: 28.03.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Pierwsze, co mi się rzuciło w oczy, to komentarze. PHPDoc jest najlepszy rozwiązaniem, opanowanie go nie powinno stanowić większego problemu. Poza tym opisujesz typy zwracane przez php nazwami typów SQL. Bardzo chaotycznie...
Poza tym duuuużo zapytań. Zamiast sprawdzać jednym zapytaniem, a potem wywoływać UPDATE, możesz w MySQL posłużyć się REPLACE. Jest to rozszerzenie standardu, ale jeżeli trzymasz się tylko MySQL, to nie zaszkodzi z niego skorzystać. W funkcji getIp() posłużyłeś się skrótowym zapisem wyrażenia warunkowego, który u Ciebie wcale niczego nie skraca i jest nieczytelny. Do metod publicznych też warto wyrobić sobie dobry nawyk dopisywania modyfikatora public. Z błędami radzisz sobie raczej tak, jak robi się to przy programowaniu strukturalnym. Wyjątki są lepszym narzędziem. Trochę jeszcze do nauki masz, ale nie jest najgorzej. -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.06.2025 - 08:07 |