Ad un utente non importa niente se tu usi un database o altro, quello della gestione dei dati (carica/salva) è altra cosa della gestione di una persona. Se tu domani scegli di cambiare il database utilizzato o di non usare un database della tua classe "utente" non te ne fai più niente; non avrebbe quindi senso usare la programmazione ad oggetti
Questo volevo sentirmi dire 
Ogni classe contiene quindi le operazioni specifiche per quella classe che poi andranno ad interagire (oppure no) con le altri classi.
L'idea potrebbe essere allora generare delle sottoclassi di una classe DB, con connessione magari singleton, per gli inserimenti, le ricerche o gli aggiornamenti, no?
Codice PHP:
class Utente
{
public function Inserimento($nome, $cognome...){
$db = new DataBase; // oppure meglio singleton
$db->inserimento($nome, $cognome...); // magari con un costruttore prima
}
}
Ok?