<?
/***************************************************
Descrição: Manipulação de banco de dados
Autor: Victor Melonio
***************************************************/
class class_db
{
// Informações necessárias para a conexão
var $dados = array ('servidor' => 'localhost',
'usuario' => 'root',
'senha' => '',
'bd' => '',
'prefixo' => ''
);
var $conexao_id;
var $query_id;
var $array;
/*========================================================================*/
// Conectar ao banco de dados
/*========================================================================*/
function connect ()
{
// Definindo o prefixo
if ( isset ($this->dados['prefixo']) )
{
define ( "prefixo", $this->dados['prefixo'] );
}
// Conexão com o servidor MySQL
$this->conexao_id = mysql_connect ( $this->dados['servidor'],
$this->dados['usuario'],
$this->dados['senha']
);
// Verificar se a conexão foi estabelecida
if ( ! $this->conexao_id )
{
$this->erro_fatal();
return FALSE;
}
// Conexão com o banco de dados
if ( ! mysql_select_db( $this->dados['bd'],$this->conexao_id )
{
$this->erro_fatal();
return FALSE;
}
return TRUE;
}
/*========================================================================*/
// Inserir informação do banco de dados
/*========================================================================*/
function insert ($tbl, $arr)
{
$parametros = $this->tratar_insert_array( $arr );
$query = "INSERT INTO ".prefixo."{$tbl} ({$parametros[CAMPO_NOMES]}) VALUES {$parametros[CAMPO_VALORES]})";
$this->consulta_id = mysql_query( $query, $this->conexao_id );
}
/*========================================================================*/
// Atualizar informação do banco de dados
/*========================================================================*/
function update ($tbl, $arr, $where="")
{
$parametros = $this->tratar_update_array( $arr );
$query = "UPDATE ".prefixo."{$tbl} SET {$parametros}";
if ( $where )
{
$query .= " WHERE {$where}";
}
$this->consulta_id = mysql_query( $query, $this->conexao_id );
}
/*========================================================================*/
// Deletar informação do banco de dados
/*========================================================================*/
function delete ( $tbl, $where )
{
$query = "DELETE FROM ".prefixo."{$tbl} WHERE {$where}";
$this->consulta_id = mysql_query( $query );
}
/*========================================================================*/
// Tratar array (insert)
/*========================================================================*/
function tratar_insert_array ( $arr )
{
foreach ( $arr as $campo => $valor )
{
$CAMPO_NOMES .= "{$campo},";
$valor = preg_replace( "/'/", "\\'", $valor );
if ( is_numeric( $valor ) and intval( $valor ) == $valor )
{
$CAMPO_VALORES .= "{$valor},";
}
else
{
$CAMPO_VALORES .= "'{$valor}',";
}
}
$CAMPO_NOMES = preg_replace( "/,$/" , "" , $CAMPO_NOMES );
$CAMPO_VALORES = preg_replace( "/,$/" , "" , $CAMPO_VALORES );
return array( 'CAMPO_NOMES' => $CAMPO_NOMES,
'CAMPO_VALORES' => $CAMPO_VALORES
);
}
/*========================================================================*/
// Tratar array (update)
/*========================================================================*/
function tratar_update_array ( $arr )
{
foreach ( $arr as $campo => $valor )
{
$valor = preg_replace( "/'/", "\\'", $valor );
$retorno .= "{$campo}='{$valor}',";
}
$retorno = preg_replace("/,$/", "", $retorno);
return $retorno;
}
}
?>Exemplos de utilização
<?
require "class_db.php";
$DB = new class_db;
// $DB->dados['servidor'] = "localhost"; (já é padrão da classe)
// $DB->dados['usuario'] = "root"; (já é padrão da classe)
// $DB->dados['senha'] = ""; (já é padrão da classe)
$DB->dados['prefixo'] = "tbl_"; // o padrão é nulo
$DB->connect();
// INSERT
$DB->insert( 'tabela', array('campo_1' => 'valor_1', 'campo_2' => 'valor_2') );
// UPDATE
$DB->update( 'tabela', array('campo_1' => 'valor_1', 'campo_2' => 'valor_2'), "campo_id = '1'" );
// DELETE
$DB->delete( 'tabela', "campo_id='1'" );










