Mysql
 sql >> Database >  >> RDS >> Mysql

Come accedere alla connessione mysqli in un'altra classe su un'altra pagina?

Il tuo DBConnection la classe avrebbe bisogno di un metodo aggiuntivo:

public function getLink()
{
    return $this->mysqli;
}

Sembra che il tuo User originale class era una sottoclasse di DBConnection , perché mysqli proprietà su DBConnection è protected e User la classe ha un parent::__construct() chiama.

È meglio usare l'iniezione delle dipendenze, quindi il tuo User la classe riceverà la sua connessione al database tramite il costruttore:

public function __construct(DBConnection $db)
{
    $this->mysqli = $db->getLink();
}

Quindi dal tuo codice puoi eseguire:

$db = new DBConnection;
$uObj = new User($db);