allora ciò che hai fatto è utile ma sbagliato

devi separare i vari strati l'uno dall'altro per ottenere qualcosa di funzionante e riusabile!

Ovvero

codice:
    Mysql    PGSql    SQLite
      |        |         |
      |        |         |
      |        |         |
      +--------+---------+
               |
               |
               |
              DAL
               |
               |
               |
   +-----------+------------+
   |           |            |
   |           |            |
   |           |            |
Gestione   Gestione     Gestione
Sessioni    Moduli    NonSoCheCosa
Questo è il modello che dovresti seguire per iniziare a ottenere dei risultati apprezzabili, ovvero separare la logica dei vari componenti per poi farli cooperare tra loro

DAL -> Database Abstraction Layer

In realtà è solo una classe che implementa le funzioni specifiche di un db ma le implementa in modo che cambiando funzioni i metodi che espone lavorino allo stesso modo fornendo portabilità del codice sorgente

Anche se quest'ultima cosa non ti serve veramente ti consiglio comunque di seguire questa linea di progettazione per poter sviluppare una classe per la gestione del database a basso livello (connessione, selezione db, elaborazione di query e funzioni personali ed altro ancora) strutturata correttamente

ti consiglio di leggerti della documentazione prima sullo sviluppo ad Oggetti, poi ti consiglio di leggere degli esempi di strutture di questo tipo, o framework, dato che si chiamano cosi, e per finire dai un'occhiata a dei documenti sulla XP con php (eXtreme Programming)

PS: dai un'occhio alla pillola che ho scritto sull'argomento framework/cms che può esserti utile