Rafael Clares


PHP 5 + Classes + Banco de dados
Abril 9, 2009, 11:47 pm
Arquivado em: PHP

PARTE I

Olá,
Resolvi escrever algo sobre classes, objetos e banco de dados com PHP 5.

A idéia geral é mostrar o seguinte:

* Classes e Métodos  simples com PHP5. 
* Classes e Metódos para transações com banco de dados PostgreSql.
* Fábrica de objetos, veremos como tornar mais simples e rápido o uso das classes.
* Classes genéricas, vamos utilizar uma mesma classe para transações com bancos e tabelas distintas.

Será um desafio bacana e acredito ser muito útil para quem ainda não sabe oop ao menos o básico, claro.

Para isso precisamos começar com o básico sobre as classes, criaremos métodos bem simples no intuito de fazer todos entenderem o conceito antes de escrevermos algo realmente aplicável.
Então iremos separar as coisas e na medida em que vão compreendendo vamos avançando ok …

Existe um Post sobre o básico de classes com PHP5, leiam aqui antes de prosseguir.

Supondo que você já leu o post  indicado vamos criar uma classe simples.

Vamos para a PARTE I

A classe Usuario, arquivo nomeado como usuario.class.php  dentro do diretório classes/ .

< ?
 class Usuario
 {
  # declarando  variavel publica nome
  public $nome;

  # declarando variavel protected senha
  protected $senha;
  
  # construtor da classe  [vazio]
  public function __construct(){}

  # Metodo seta nome de usuario
  function setNome($nome)
  {
   $this->nome = $nome;
  }

  # Metodo retorna o nome de usuario
  public function getNome()
  {
   return $this->nome;
  }
  
  # Metodo que seta a senha de usuario
  public function setSenha($senha)
  {
   # setando a variavel senha
   $this->senha = md5($senha);
  }
  
  # Metodo retorna a senha criptografada com MD5
  public function getSenha()
  {
   return $this->senha;
  }
 }
?>

Iremos guardar todas as classes que criarmos no diretório classes.

Agora que temos a classe Usuario vamos ver como instanciar os objetos da classe e chamar seus métodos.
Escrevemos agora uma arquivo qualquer e incluiremos a classe Usuario nele.
Obs: Para os arquivos que irão instanciar os objetos você poderá dar o nome que desejar mas respeite os nomes dados as classes para não termos problemas.

Chamarei este arquivo de index.php (dê o nome que desejar).

< ? 
 # Incluindo a classe usuario
 include 'classes/usuario.class.php';

 # Instanciando o objeto usuario
 $usuario = new Usuario();

 # Setando o nome [parametro nome]
 $usuario->setNome("Rafael Clares");

 # Setando a senha [parametro senha]
 $usuario->setSenha("123senha");

 # Imprimindo o nome
 print $usuario->getNome();

 # Imprimindo a senha
 print $usuario->getSenha();

 # Destruindo os objetos
 unset($usuario);
?>

Agora basta testar em seu navegador
http://localhost/pastadoprojeto/index.php

Na PARTE II vamos implementar os médotos de acesso ao Banco de dados, leiam o post sobre a classe conexão em:
http://clares.wordpress.com/2008/07/09/php-postgresql-conexao-com-banco-de-dados/

Iremos utiliza-la, porém não devo explicar novamente como ela funciona, claro, apenas se surgirem dúvidas.
Por enquanto é isso, estou ansioso para passarmos para próxima etapa.

Abraços.
Rafael Clares