![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 332 Pomógł: 6 Dołączył: 27.11.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam napisałem kod i ma on za zadanie dodawać lub odejmować pkt za daną czynność na stronie np. gdy user doda komentarz. Jeśli admin usunie np. komentarz danego użytkownika wtedy usuwa mu liczbę pkt.
I chodzi mi żeby to zrobić tak że przy tworzeniu obiektu podawać user_id, identyfikator kategorii oraz nazwę metody jaka ma być wykonywana np.
tylko wiem że tak się nie da. Wiec proszę o wskazówki jak powinna być napisana taka klasa bo wiem że da się to napisać prościej. Proszę o wskazówki ogarniętych ludzi w OOP. Kod.
Ten post edytował arzach 24.10.2010, 20:29:32 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
nie rozumiem, ale mozesz podawac 3 parametr do __construct() jako string i potem wywolywac w nim dana metode ;]
-------------------- Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/ Moj blog |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 170 Pomógł: 11 Dołączył: 2.03.2008 Skąd: Lublin Ostrzeżenie: (10%) ![]() ![]() |
Pierwsze co mi się nasunęło do głowy: call_user_method. Parametr jako string.
/e: Podsekcja alternatywy ![]() Ten post edytował Misiur66 24.10.2010, 20:33:55 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
1. Takie coś jak ilość punktów przypisanych do danej kategorii nie powinno być zapisane na sztywno w kodzie klasy.
2. Aktualizację tych punktów powinieneś przenieść tuż pod usunięcie/dodanie rekordu do bazy, a całość objąć transakcją jeżeli jeszcze tak nie jest. 3.
Swoją drogą: 1. Cały ten mechanizm najlepiej by było przenieść do bazy danych w postaci triggera. 2. Używaj wyjątków. 3. Masz metody, które sugerują, że są setterami, a sprawdzają poprawność danych, wtf? 4. Za potworki w nazwach typu setCat_id powinno się... |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 31.07.2025 - 10:47 |