Ciao a tutti,
vorrei implementare la classe mysqli nel mio sito, dato che sto ancora usando il metodo procedurale, ma ho alcuni problemi a farlo, sopratutto su come utilizzare l'oggetto già instanziato in altre classi.
- Io dichiaro un nuovo oggetto in un file "head.php", che sarà poi il primo file ad essere incluso in ogni pagina
Codice PHP:
$mysqli = new mysqli("dati connessione");
- A questo punto io definisco altre mie classi, nelle quali però ho bisogno di effettuare query al database, tramite la classe mysqli, il punto è che non so come fare. Per esempio se provo a instanziare una classe Utente e richiamare il metodo registraUtente mi da errore per variabile $mysqli non definita:
Codice PHP:
lass Utente{
/*Attributi utente*/
/*Metodo costrutttore*/
public function registraUtente(){
/*richiamo l'oggetto instanziato nel file head.php,
che viene prima del richiamo dell'isntanza di questa classe e
del richiamo a questo metodo*/
$query = "INSERT INTO utenti ('id','user','pass') VALUES ('',$this->user,$$this->pass);";
$result = $mysqli->query($query);
}
}
Come faccio ad utilizzare i metodi della classe mysqli in altre classi da me definite?
Devo per forza crearmi una classe "DB" per la connessione che estende su mysqli, e poi estendere ogni classe definita da me che necessità di interazioni con il database su "DB", così da poter accedere ai metodi delle classi genitori?
Non sono ancora praticissimo di OOP, dunque non mi è chiaro come risolvere questo problema.