Jump to content


Photo

Framework De Banco De Dados (mysql)


  • Faça o login para participar
3 replies to this topic

#1 goiaba2000

goiaba2000

    Tô com sono!

  • Usuários
  • 1118 posts
  • Sexo:Não informado
  • Localidade:Sobradinho-DF

Posted 22/05/2005, 21:34

<?php
class mysql extends main{
	function db_connect($args=array()){
  return @mysql_connect($args[0],$args[1],$args[2])
    or die("Nao foi possivel conectar-se ao banco de dados (1)". mysql_error());
	}
	
	function db_select_db($args){
  return @mysql_select_db($args)
    or die("Nao foi possivel escolher o banco de dados (2)". mysql_error());
	}
	
	function db_close($conexao){
  return mysql_close($conexao);
	}
	
	function db_query($query){
  return mysql_query($query);
	}
	
	function db_fetchrow($query){
  return mysql_fetch_array($query);
	}
	
	function db_num_rows($query){
  return mysql_num_rows($query);
	}
	
	function dataseek($query,$posicao){
  mysql_data_seek($query,$posicao);
	}
}
?>

agora vc tem mobilidade de banco
PHP + UML + OO + Flash + MySQL = IMBATIVEL

http://www.guilardi.com.br
- portifólio
http://www.deusehmais.com.br
- projeto atual

#2 jinyam

jinyam

    Normal

  • Usuários
  • 69 posts
  • Sexo:Não informado

Posted 11/06/2005, 04:41

Sou meio burrao em classes me de exemplo ai

#3 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 11/06/2005, 05:55

Conectando:
$cMySQL = new mysql;
$cMySQL->db_connect(array("localhost", "root", ""));

Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29

#4 goiaba2000

goiaba2000

    Tô com sono!

  • Usuários
  • 1118 posts
  • Sexo:Não informado
  • Localidade:Sobradinho-DF

Posted 22/07/2005, 11:40

atualizando...
<?php
/*
Manipulação em geral para banco de dados
*/
class Database{
	var $db_server;
	var $db_senha;
	var $db_usuario;
	var $banco;
	
	/*
	Constroi, atribui valores
	*/
	public function Database(){
  global $ConfigDB;
  
  $this->db_server	= $ConfigDB["Servidor"];
  $this->db_usuario	= "";
  $this->db_senha  = "";
  $this->banco  = $ConfigDB["Banco"];
	}
	
	/*
	conecta-se ao banco
	*/
	private function Connect(){
  @mysql_connect($this->db_server,$this->db_usuario,$this->db_senha)
    or die("Nao foi possivel conectar-se ao banco de dados (1)". mysql_error());
  @mysql_select_db($this->banco)
    or die("Nao foi possivel escolher o banco de dados (2)". mysql_error());
  return	$conexao;
	}
	
	/*
	Consulta o banco
	*/
	public function Query($query){
  $this->Connect();
  return	mysql_query($query);
	}
	
	/*
	Conta o número de linhas que a consulta retornou
	*/
	public function NumRows($query){
  return	mysql_num_rows($query);
	}
	
	/*
	Retorna resultado de consulta
	*/
	public function FetchAll($query){
  return	mysql_fetch_array($query);
	}
	
	/*
	Posiciona o vetor no resultado
	*/
	public function DataSeek($query,$posicao){
  @mysql_data_seek($query,$posicao);
  return	false;
	}
}
?>

exemplo:
$DataBase	= new DataBase();
$ColunasAnexTipo	= $_REQUEST["ColunasAnexTipo"];

$query  = $DataBase->Query("SELECT
       	 t1.*,
       	 t2.*
        FROM
       	 colColunas	AS t1,
       	 usuUsuarios	AS t2
        WHERE
       	 t2.UsuariosID  = t1.ColunasAnexUsuario  AND
       	 t1.ColunasAnexTipo	= '$ColunasAnexTipo'
       	 $procura
        ORDER BY
       	 ColunasData ASC");
$numlinhas	= $DataBase->NumRows($query);
while($linha=$DataBase->FetchAll($query)){
 bla blabla
}

PERGUNTA:
por que usar desta forma ao inves de colocar diretamente as funções do mysql?

RESPOSTA:
se houver a nessecidade de trocar o banco de dados, é só ir até a classe e alterar as funções diretamente lá. isso tras mobilidade ao codigo.

Não poste seguidamente, caso deseje alterar/adicionar alguma informação ao seu último post clique no botão [Editar]Posted Image.

Edição feita por: victorpfm, 22/07/2005, 11:58.

PHP + UML + OO + Flash + MySQL = IMBATIVEL

http://www.guilardi.com.br
- portifólio
http://www.deusehmais.com.br
- projeto atual




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq