W Twoim kodzie są 2 duże problemy:
- Zmienna widoczność
- Połączenie statyczne
Szczegółowo:
-
W oop powinieneś zapomnieć o zmiennych globalnych. Są przeciwne zasadzie hermetyzacji. Co więcej, nie masz nawet żadnej zmiennej globalnej w swoim kodzie, więc
global $db;
linia jest bez znaczenia. Zadeklaruj prywatną zmienną $db na poziomie klasy (właściwość ) zainicjuj go w metodzie connection() i uzyskaj do niego dostęp w metodzie insert. -
Wywołujesz metodę połączenia jako
classo::connection();
. Jednak musisz zadeklarować metodę połączenia jako statyczną . Albo zadeklaruj swoją metodę połączenia jako statyczną (ale potem zmień $db na statyczną) lub wywołaj ją jako zwykłą metodę używając $this.