Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem z Dziedziczeniem
GameMaker
post
Post #1





Grupa: Zarejestrowani
Postów: 149
Pomógł: 2
Dołączył: 31.01.2010
Skąd: Konstancin-Jeziorna

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


Witajcie !

Może mi ktoś wytłumaczyć na czym polega mój błąd przy dziedziczeniu.

  1.  
  2.  
  3. class MainClass{
  4.  
  5. public $logged_in = null;
  6. public $session = null;
  7. public $user_info = null;
  8. public $sesjas = null;
  9.  
  10. function __construct($db = '')
  11. {
  12.  
  13. $this->db = $db;
  14.  
  15. $this->startSession();
  16. }
  17.  
  18.  
  19. private function startSession()
  20. {
  21.  
  22. $this->session = $_SESSION;
  23. return $this->session;
  24. }
  25.  
  26.  
  27.  
  28. public function LoginCheck(){
  29.  
  30. $this->sesjas = $this->db->query('Select * from wesele_user',true);
  31.  
  32. return $this->sesjas;
  33. }
  34.  
  35. private function setUserId($userid)
  36. {
  37.  
  38. $this->userid = $userid;
  39.  
  40. }
  41.  
  42. private function getUserId(){
  43.  
  44. return $this->userid;
  45. }
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52. }
  53.  
  54. class ShowInfo extends MainClass{
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62. public function wezSesje() {
  63.  
  64. if(is_object($this->db))
  65. {
  66. $this->sesja['1'] = 'yes';
  67. }else{
  68.  
  69. $this->sesja['1'] = 'no';
  70. }
  71.  
  72. return $this->sesja;
  73.  
  74. }
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87. }
  88.  
  89.  


Problem jest taki , że nie przekazuje mi obiektu $this->db .



--------------------
Movie CMS v 0.1 - Postęp 37 45 49 53 69 %
Go to the top of the page
+Quote Post
qrooel
post
Post #2





Grupa: Zarejestrowani
Postów: 306
Pomógł: 42
Dołączył: 25.03.2010
Skąd: Kraków

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


Polskie nazwy zmiennych? ;p


--------------------
Strony WWW: http://arscreo.pl
Go to the top of the page
+Quote Post
GameMaker
post
Post #3





Grupa: Zarejestrowani
Postów: 149
Pomógł: 2
Dołączył: 31.01.2010
Skąd: Konstancin-Jeziorna

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


zmienna to zmienna , wiem ze sie stosuje angielskie nazewnictwo , ale mialem dzisiaj taki kaprys.


--------------------
Movie CMS v 0.1 - Postęp 37 45 49 53 69 %
Go to the top of the page
+Quote Post
tehaha
post
Post #4





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

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


pokaż jak tego używasz i jakiego działania się spodziewasz, z tego co tu wypisałeś, powienieś przekazywać zmienną $db do konstruktora klasy ShowInfo(), czyli np. tak:
  1. $a = new ShowInfo('aaa');
  2. echo $a->db;

dziwne jest to, że w przypadku nie przekazania tej zmiennej ustawiasz ją domyślnie jako typ String, natomiast w klasie ShowInfo sprawdzasz czy jest obiektem...ale zakładam, że to jakaś luźna zabawa językiem, a nie prawdziwy projekt, bo cała ta klasa wydaje się nie mieć sensu.
Go to the top of the page
+Quote Post
Pilsener
post
Post #5





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

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


Cytat
Problem jest taki , że nie przekazuje mi obiektu $this->db .


Ja nie widzę takiego pola w klasie jednej ani drugiej. Po mojemu jak się używa $this->pole to te pole musi być zadeklarowane na początku klasy albo trzeba uzyć magicznej metody by to niestniejące pole obsłużyć.

I pokaż jak używasz tych klas plus komunikaty błędów.
Go to the top of the page
+Quote Post
greycoffey
post
Post #6





Grupa: Zarejestrowani
Postów: 320
Pomógł: 29
Dołączył: 3.04.2010

Ostrzeżenie: (20%)
X----


Ustaw wyświetlanie wszystkich błędów, a zmiennej $this->db nie ma zadeklarowanego żadna klasa.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 19.08.2025 - 10:50