![]() ![]() |
Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 206 Pomógł: 4 Dołączył: 2.04.2005 Ostrzeżenie: (0%)
|
oto moja klasa
I jakos nie działa mi to $this->_arData = $arData; bo gdy chce wyświetlic sobie tablice przez print_r($this->_arData); nic nie wyświetla :/ [+] edit Dodaje tag, aby temat był zgodny z forum Przedszkole, ponieważ już padły odpowiedzi. Na przyszłość proszę pamiętać o tym, inaczej temat zostanie zamknięty. --- ~strife |
|
|
|
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 426 Pomógł: 32 Dołączył: 24.05.2007 Ostrzeżenie: (0%)
|
Bo zmiennych private nie można wyświetlić o ile się nie myle- takie zabezpieczenie, zmień na public i zobacz czy wyświetli, jeżeli tak no to wszystko wporządku jest
|
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 206 Pomógł: 4 Dołączył: 2.04.2005 Ostrzeżenie: (0%)
|
Ciągle to samo -> czyli nic
pozatym kiedy wywołuje funckje connect $db = Db::connect(); to wyrzuca mi wyjątek Brak danych potrzebnych do zainicjowania połączenia czyli nie przechodzi próby isset :/ |
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 426 Pomógł: 32 Dołączył: 24.05.2007 Ostrzeżenie: (0%)
|
Co do wyświetlania private- tylko mi się zdawało ;P
Ja u siebie nadałem jej wartość początkową 0 i przeszło, oczywiście constructor zmieniłem na public bo wywalało mi błąd Ten post edytował deirathe 1.07.2007, 00:15:02 |
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 206 Pomógł: 4 Dołączył: 2.04.2005 Ostrzeżenie: (0%)
|
Tak ją wywołuję
pozatym jeżeli w funkcji connect umieszczę
to wszystko jest OK a jak ją przypisuje do $this->_arData to tak jakby nie istniała :/ a może cos z tym że funkcja jest statyczna ? No więc chodzi o to ze funkcja jest statyczna :/ Bo zrobiłem normalnie i działa. Może funkcja statyczna nie moze zapisaywac do zmiennych w klasie. Jak więc to rozwiązać? hmm to teraz turdno mi to zrozumieć funkcja w klasie class Db{ public $_hConn; public $_arData;[php] |
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 1 033 Pomógł: 125 Dołączył: 17.09.2005 Skąd: Żywiec Ostrzeżenie: (0%)
|
Najprościej rzecz ujmując $this można używać, gdy został utworzony obiekt klasy. Jeśli chcesz operować na metodach statycznych, to musisz użyć self::
Ten post edytował Kicok 1.07.2007, 09:06:07 |
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 206 Pomógł: 4 Dołączył: 2.04.2005 Ostrzeżenie: (0%)
|
Przeceiż tworzę obiekt w funkcji start()
coś nadal nie tak (IMG:http://forum.php.pl/style_emoticons/default/dry.gif)
a wywołuje tak
punkt pierwszy wyswietla tak jak powinno a pkt 2 Db Object ( [_hConn] => ) Ten post edytował BugsBunny 1.07.2007, 09:44:15 |
|
|
|
Post
#8
|
|
|
Grupa: Zarejestrowani Postów: 1 033 Pomógł: 125 Dołączył: 17.09.2005 Skąd: Żywiec Ostrzeżenie: (0%)
|
Cytat Przeceiż tworzę obiekt w funkcji start() Jakoś nie zauważyłem definicji metody start() w żadnym z powyższych kodów (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Cytat punkt pierwszy wyswietla tak jak powinno a pkt 2 Db Object ( [_hConn] => ) Przecież dobrze się wyświetla. W linijce 6 przekazujesz metodzie connect() zmienną $db, która jest obiektem utworzonym w linijce 4. Tak więc do prywatnej zmiennej $_arData zapisywana jest referencja obiektu klasy Db. Klasa Db ta ma tylko jedną publiczną zmienną, więc tylko tyle wyświetliła funkcja print_r() Ten post edytował Kicok 1.07.2007, 12:17:58 |
|
|
|
Post
#9
|
|
|
Grupa: Zarejestrowani Postów: 206 Pomógł: 4 Dołączył: 2.04.2005 Ostrzeżenie: (0%)
|
O Lol ale ze mnie gapa (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Nastąpił konflikt nazw. bo stworzony obiekt nazwałem $db i dane które podawałem do połączenia też $db. Już wszystko działa. Dzięki za pomoc
|
|
|
|
![]() ![]() |
|
Aktualny czas: 19.12.2025 - 18:16 |