Perchè usi la chiocciola? cosi facendo eviti di stampare gli errori a video, utili ma non i caso di testing dello script.
Cosi come hai scritto te non saprei se dovesse funzionare, è corretto dal punto di vista di come hai istanziato l'oggetto, ma non ti assicuro sul funzionamento delle funzione che hai usato per stampare gli errori ( non ho mai provato a combinare la classe mysqli con le funzione mysqli_*() ), se non dovessi funzionare ti consiglio di usare o il metodo ad oggetto o il metodo procedulare ( le funzioni ), no in combinazione tra di loro.