Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Statystyki Sportowe
marins
post
Post #1





Grupa: Zarejestrowani
Postów: 47
Pomógł: 4
Dołączył: 12.07.2003

Ostrzeżenie: (0%)
-----


Zawodnik - Tabela_A i Obiekt_A
Przypisanie zawodnika do drużyny - Tabela_B i Obiekt_B
Przypisanie zawodnika do meczu - Tabela_C i Obiekt_C


Oczywiście Tabele są ze sobą powiązane:

Tabela_A.player_id = Tabela_B.player_id
Tabela_B.match_id = Tabela_C.match_id
Tabela_C.pos_id


Sytuacja wygląda następująco.

W profilu zawodnika znam id z Tabeli A.
W spisie drużyny znam id z Tabeli B
W samym meczu znam id z Tabeli C.


Jak widać, nie zawsze znam na starcie id z tabeli_A,
Czasami muszę wyciągać je z Obiektu_B i potem Obiektu_A.

Pytanie:
Jak ugryźć to poprawnie, aby wszystko wyglądało w pełni OOP i nie sprawiało w przyszłości problemu

Wariant I.
  1. $A = new A();
  2. $B = new B();
  3. $C = new C();
  4.  
  5. $A->set_id(1)->load_data();
  6. $B->set_player_id( $A->get_id() )->load_data();
  7.  
  8. echo $A->get_name() . ' '. $B->get_nr();
  9.  
  10. $C->set_player_id($B->get_match_id())->load_data();
  11. echo $C->get_min();


Wariant II.
  1. wychodząc z meczu:
  2. $C = new C();
  3. $C->set_id (666)->load_data();
  4.  
  5. $C->match_obj
  6. ->set_match_id($C->get_id) //zwracamy obiekt B
  7. ->load_data_by_match_id()
  8. $C->player_obj
  9. ->set_id($C->match_obj->get_player_id()) //zwracamy obiekt A
  10. ->load_data();
  11.  
  12.  
  13. echo $C->get_min();
  14. echo $C->player_obj->get_name() . ' '. $C->match_obj->get_nr();


Czy może jeszcze inaczej?

Nie chodzi mi o to, że ktoś z szanownego Grona napisze za mnie ten kod, chodzi raczej o wskazanie właściwej drogi.

Ten post edytował marins 28.08.2011, 19:56:26
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 12.10.2025 - 23:12