![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 0 Dołączył: 31.05.2013 Ostrzeżenie: (0%) ![]() ![]() |
Mam problem, widocznie nie wystarczająco rozumiem zasięgu zmiennych oraz obiektów
Mam sobie plik z łączeniem z bazą danych config.php
No i tutaj wszystko działa, problem rodzi się gdy chce coś dodać bo bazy, ładuje plik z klasą odpowiedzialną za łączenie z bazą danych require_once ('config.php'); zarówno w pliku index.php jak i pliku który przechowuje pozostałe klasy nowaclass.php. Zacząłem pisać klasę odpowiedzialną za tworzenie użytkownika,
Coś takiego nie przynosi rezultatu i oddaje błąd, że funkcją exec próbuje odwołać się do czegoś co nie jest obiektem "Fatal error: Call to a member function exec() on a non-object" Ale gdy tą metodę zrobię w ten sposób
Wszystko działa ok, stąd moje pytanie, jak zrobić iż globalnie tworzę obiekt $pdo = Database::getDB(); i nie muszę łączyć się z bazą danych za każdym razem w metodzie gdy chcę tego użyć ? Opcjonalnie nie tylko w danej klasie ale także dla innych klas. Ten post edytował hunter1988 2.06.2013, 11:00:58 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 0 Dołączył: 31.05.2013 Ostrzeżenie: (0%) ![]() ![]() |
Czyli jeżeli mam połączenie które już istnieje to za każdym razem jak piszę nową klasę i chce działać na bazie danych muszę w konstruktorze $this->pdo = Database::getDB(); (chodzi mi o to żeby w jednym miejscu ustawić połączenie które będzie wszędzie, a potem odwoływać się tylko do obiektu pdo)
To jest chyba odwoływanie się do połączenia które już istnieje ? Jeżeli dobrze mi się wydaje to jak powinno się działać na bazie danych, tworzyć nowe metody itp ? Ten post edytował hunter1988 2.06.2013, 12:40:13 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 16.10.2025 - 20:16 |