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


6 Comentários até o momento
Deixe um comentário

Pow galera, ninguém se interessa? Queria tanto continuar isso kas kas kas…

Comentário por Rafael Clares

primeiro que sua senha ja deve ser criptografada antes de ser inserida no banco.

Comentário por suissa

Suissa (?), obrigado pelo comentário!
Bem,
realmente não está no post a questão de criptografia, mas quem falou que o post é sobre criptografia ?
Outra,
acho que partir da idéia de segurança sem mostrar o que são falhas não leva a muito sucesso, sem dizer que estamos falando de pessoas que na maioria nem tem idéia do que é o banco de dados e para que serve, não está no post que será abordada a segurança de banco …
Então se você tem a mesma disposição que eu ao ponto de propor escrever a troco de nada, posts para tentar compartilhar o que sabe, você bem que poderia ter em seu blog assuntos que levem as pessoas do 0 à 1000 em conhecimentos em um só post, eu mesmo ficaria feliz em poder aprender tudo em uma só página.
Acho críticas construtivas mas dependendo da forma em que são escritas as vezes não soam muito amigáveis.

Comentário por Rafael Clares

olá rafael, gostei muito do seu site e já me aproveitei de alguns conteúdos dele…

você é um cara muito bacana, divulgando na net oque muitos tem duvidas.

venho entrado direto aqui, gostaria que postasse mais dicas, tutoriais e por ae vai.. se possivel PHP OO + mysql hehe

Comentário por luiz

Luiz, obrigado pelo comentário.
Bem, na verdade eu gosto de colocar aqui o que eu aprendo, infelizmente desde o começo eu
disponibilizo o código fonte o que me traz mais downloads que dúvidas ou comentários, de fato,
eu preciso escrever mais, o problema é que só vejo o número de downloads aumentando e os
comentários diminuindo o que não me dá tanta vontade de escrever ha-ha-ha.
Mas beleza véio, logo mais eu irei continuar esse post sobre PHP OO e BD.

Um forte abraço,

Comentário por Rafael Clares

eu sei como que é isso…

tinha um site de festas.. parei com ele porque o usuário é muito mal agradecido…

ninguem ve o trabalho que vc tem…

Comentário por luiz




Deixe um comentário
Linhas e parágrafos quebram automaticamente, endereços de email não serão mostrados, HTML permitido: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>