Ci sono 2 grossi problemi nel tuo codice:
- Visibilità variabile
- Chiamata statica
In dettaglio:
-
In oop dovresti dimenticare le variabili globali. Sono contrari al principio di incapsulamento. Inoltre, non hai nemmeno alcuna variabile globale nel tuo codice, quindi
global $db;
la linea non ha senso. Dichiara una variabile $db privata a livello di classe (proprietà ) inizializzalo nel metodo connection() e accedi ad esso nel metodo insert. -
Stai chiamando il metodo di connessione come
classo::connection();
. Tuttavia, dovresti dichiarare il metodo di connessione come statico . Dichiara il tuo metodo di connessione come statico (ma poi cambia anche $db in statico) o chiamalo come metodo normale usando $this.