Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá,
Esta é minha primeira Classe e gostaria de compartilhar com vocês. Com ela é possível conectar, executar query e retornar resultados de Bancos de Dados Microsoft SQL Server e MySQL. Como sou iniciante em Class, se tiverem alguma dica de como melhora-la será bem vinda também.
Exemplo de uso:
<?php
require("class.inc.php");
$mssql_servidor = "200.200.200.200";
$mssql_usuario = "sa";
$mssql_senha = "senha";
$mssql_banco = "banco";
$mysql_servidor = "127.0.0.1";
$mysql_usuario = "root";
$mysql_senha = "senha";
$mysql_banco = "banco";
$db = new dbClass('mssql');
$db2 = new dbClass('mysql');
$db->query("SELECT TOP 10 * FROM tabela");
while ($resultado = $db->result('array')) {
echo $resultado[0] . "<br>";
}
$db2->query("SELECT * FROM tabela LIMIT 10");
while ($resultado2 = $db2->result('object')) {
echo $resultado2->coluna . "<br>";
}
$db->close();
$db2->close();
?><?php
class dbClass {
private $db_type,
$db_host,
$db_user,
$db_pass,
$db_dbase,
$db_link,
$db_query;
private function fatalerror($err_type) {
if ($err_type == 1) die('Erro ao conectar no Servidor SQL !');
elseif ($err_type == 2) die('Erro ao selecionar o Banco de Dados !');
elseif ($err_type == 3) die('Tipo de Banco de Dados não suportado !');
else die('Erro desconhecido !');
}
public function __construct($db_type) {
$this->db_type = $db_type;
$this->connect();
}
public function connect() {
if ($this->db_type == 'mssql') {
$this->db_host = $GLOBALS['mssql_servidor'];
$this->db_user = $GLOBALS['mssql_usuario'];
$this->db_pass = $GLOBALS['mssql_senha'];
$this->db_dbn = $GLOBALS['mssql_banco'];
if (!$this->db_link = @mssql_connect($this->db_host, $this->db_user, $this->db_pass)) $this->fatalerror(1);
if (!@mssql_select_db($this->db_dbn, $this->db_link)) $this->fatalerror(2);
}
elseif ($this->db_type == 'mysql') {
$this->db_host = $GLOBALS['mysql_servidor'];
$this->db_user = $GLOBALS['mysql_usuario'];
$this->db_pass = $GLOBALS['mysql_senha'];
$this->db_dbn = $GLOBALS['mysql_banco'];
if (!$this->db_link = @mssql_connect($this->db_host, $this->db_user, $this->db_pass)) $this->fatalerror(1);
if (!@mssql_select_db($this->db_dbn, $this->db_link)) $this->fatalerror(2);
}
else $this->fatalerror(3);
}
public function query($query) {
if ($this->db_type == 'mssql') $this->db_query = mssql_query($query, $this->db_link);
elseif ($this->db_type == 'mysql') $this->db_query = mysql_query($query, $this->db_link);
else $this->fatalerror(3);
}
public function result($res_type = NULL) {
if ($this->db_type == 'mssql') {
if ($res_type == 'object') return mssql_fetch_object($this->db_query);
elseif ($res_type == 'array') return mssql_fetch_array($this->db_query);
elseif ($res_type == 'row') return mssql_fetch_row($this->db_query);
else mssql_rows_affected($this->db_query);
mssql_free_result($this->db_query);
}
elseif ($this->db_type == 'mysql') {
if ($res_type == 'object') return mysql_fetch_object($this->db_query);
elseif ($res_type == 'array') return mysql_fetch_array($this->db_query);
elseif ($res_type == 'row') return mysql_fetch_row($this->db_query);
else mysql_affected_rows($this->db_query);
mysql_free_result($this->db_query);
}
else $this->fatalerror(3);
}
public function close() {
if ($this->db_type == 'mssql') mssql_close($this->db_link);
elseif ($this->db_type == 'mysql') mysql_close($this->db_link);
else $this->fatalerror(3);
}
}
?>Espero que gostem.
Até mais.
Carregando comentários...