posto una primissima versione della classe che ho fatto:
Codice PHP:
<?
class Database{
var $nome_db;
var $host;
var $user;
var $password;
//connessione
var $conn;
//tipo di database
var $tipo_database;
//database
var $db;
/*
costruttore
*/
function Database($tipo_db,$nome_db,$host,$user,$password){
$this->tipo_database =$tipo_db;
$this->nome_db =$nome_db;
$this->host =$host;
$this->user =$user;
$this->password =$password;
$this->crea_connessione();
}
/*
si connette al database
*/
function crea_connessione(){
switch($this->tipo_database){
case 'mysql':
$this->conn =mysql_connect($this->host,$this->user,$this->password);
$this->db =mysql_select_db($this->nome_db,$this->conn);
break;
case 'postgresql':
$stringa_connessione ="host=$this->host dbname=$this->nome_db user=$this->user password=$this->password";
$this->conn =pg_connect($stringa_connessione);
break;
default:;
}
}
/*
funzione che esegue una query
*/
function esegui_query($query){
switch($this->tipo_database){
case 'mysql':
return mysql_query($query);break;
case 'postgresql':
return pg_query($query);break;
default:;
}
}
/*
funzione che estrae il primo record dal risultato di una query
*/
function estrai_record($risultato_query){
switch($this->tipo_database){
case 'mysql':
return mysql_fetch_array($risultato_query);break;
case 'postgresql':
return pg_fetch_array($risultato_query);break;
default:;
}
}
}
?>
ecco il codice con cui l'ho testata
come vedete basta commentare una o l'altra riga x passare da un database all'altro
Codice PHP:
<?
include ("database.php");
//$d=new Database("postgresql","prova","localhost","postgres","postgres");
$d=new Database("mysql","prova","localhost","root","nicola");
echo "ciao
";
$risultato=$d->esegui_query("select * from indirizzi");
while($rs=$d->estrai_record($risultato)){
echo $rs["nome"]." ".$rs["cognome"]."
";
}
?>