Ich tu mir etwas schwer, deiner Frage zu folgen,
Connectetd wird bei mysqli mit mysqli_connect() gemacht, diese Verbindung muss natürlich so lange bestehen bleiben, bis alle Aufgaben an die Datenbank übergeben sind. Ja nachdem, ob die Verbindung nur in einer Funktion oder innerhalb einer Klasse gebraucht wird, ist sie entsprechend öffentlich oder auch nicht.
Ähnlich ist es mit deinen Variablen, je nach dem, wo sie gebraucht werden, sind sie entsprechend zu deklarieren. Das können letztendlich auch Globale sein.
Vorgang ist
- Connect
- Statement (Query)
- Close (bei den gängigen Datenbanken ja mittlerweile automatisch, entfällt also in der Praxis)
Je nach Klasse und Programmierstil, kann die Verbindung zur Datenbank nun auch innerhalb der Klasse wieder geschlossen werden oder muss Systemweit erhalten bleiben. Das hängt doch von dir, deinem Script und einem Programmierstil ab.
Ich gehöre zu denen, die für die Verbindung zur Datenbank, eine Funktion dbconnect() aufrufen und dort alles erledigen, was zu tun ist.
Ich sehe jedenfalls keinen wesentlichen Fehler in deinem Code-Schnipsel. Eventuell solltest du dir einmal als Beispiel ein simples Gästebuch ansehen, wie es da gelöst wird.