quarta-feira, 5 de outubro de 2011

Zend Framework conectando com banco de dados

Bom dia Pessoas, hoje vou mostrar para vocês como fazer uma conexão com o banco de dados usando o Zend Framework.
O banco de dados que estou usando aqui é o MySql, tenho apenas uma tabela chamada usuario, com 2 campos, id e nome.Fiz essa tabela apenas para mostrar como pegar os dados de uma tabela e mostrar na tela.

Vamos no arquivo application.ini que fica na pasta configs, nesse arquivo vamos colocar o seguinte código


  1. resources.db.adapter = "pdo_mysql"
  2. resources.db.params.host = "localhost"
  3. resources.db.params.username = "root"
  4. resources.db.params.password = ""
  5. resources.db.params.dbname = "blog"

esse é o código que estou usando, aqui está o link para você saber mais sobre a configuração
http://framework.zend.com/manual/en/zend.config.adapters.ini.html


o proximo passo é fazer a conexão, mas vou fazer de uma maneira diferente, vou criar uma pasta chamada models e dentro dela vou criar mais 3 pastas como nome de Dao,Table,Entity.A estrutura ficou assim



Agora vamos para a pasta table, vamos criar o arquivo com nome Usuario e nesse arquivo colque o código


  1. class Application_Model_Table_Usuario extends Zend_Db_Table_Abstract {
  2.  
  3.     protected $_name = 'usuario';
  4.     protected $_primary = 'id';
  5.  
  6. }

a variável $_name é o nome da tabela e $_primary é a chave primaria.

vamos na pasta entity e criar o arquivo Usuario e nesse arquivo coloque o código


  1. class Application_Model_Entity_Usuario {
  2.     private $id;
  3.     private $nome;
  4.    
  5.     public function getId() {
  6.         return $this->id;
  7.     }
  8.  
  9.     public function setId($id) {
  10.         $this->id = $id;
  11.     }
  12.  
  13.     public function getNome() {
  14.         return $this->nome;
  15.     }
  16.  
  17.     public function setNome($nome) {
  18.         $this->nome = $nome;
  19.     }
  20.    
  21. }

esses são os getter e os setter, no exemplo que estou dando não vou precisar usar nenhum get ou set, caso você queira fazer alguma coisa diferente está ai o exemplo.

agora na pasta Dao vamos criar o arquivo também com o nome de usuario com o seguinte código


  1. class Application_Model_Dao_Usuario {    
  2.     public function buscarNome(){
  3.         $this->table = new Application_Model_Table_Usuario();
  4.         return $this->table->fetchAll();
  5.     }  
  6. }


agora vamos no controller, nesse exemplo estou fazendo tudo no indexController


  1. class IndexController extends Zend_Controller_Action
  2. {
  3.     public function init()
  4.     {
  5.         /* Initialize action controller here */
  6.     }
  7.  
  8.     public function indexAction()
  9.     {
  10.         $this->result = new Application_Model_Dao_Usuario();
  11.         $this->view->teste = $this->result->buscarNome();
  12.     }
  13. }

agora só falta mostrarmos o resultado na tela, desse jeito


  1. <?php
  2. foreach ($this->teste as $key):
  3.     ?>
  4.     Nome:<?php echo $key['nome']; ?><br/>
  5.     <?php
  6. endforeach;
  7. ?>


dessa maneira já é possível acessar o banco de dados com o Zend, existem outras maneiras de mostrar um dado que vem do banco, mas é desse jeito que faço atualmente.
Espero ter ajudado e até a próxima





terça-feira, 20 de setembro de 2011

Trabalhando com a URL do Zend Framework

Boa tarde pessoal, hoje vou tentar ensinar a vocês como que funciona o Zend Framework.

Explicarei como que fazemos para chamar uma action do Zend pela URL.

Como funciona a url com o Zend?
voce deve ter percebido que para chamarmos o index.phtml do zend para digitar o localhost na url, mas e se quisermos chamar alguma outra pagina ou uma outra action, como devemos fazer?
veja esse exemplo:



  1. public function mostrarAction(){
  2.  $this->view->mostra = "estou na action mostrar";
  3. }


criei uma action no indexController, no zend é assim que se da os nomes para as action a primeira palavra minuscula seguido da palavra Action com o A maiusculo

para acessar essa action precisamos da view mostrar.phtml, lembrando que a view precisa ter o mesmo nome da action

e a url ficaria assim:

http://127.0.0.1/index/mostrar

se voce fez tudo certo, ira aparecer na pagina a mensagem  "estou na action mostrar".

Vamos entender a url como ficou

http://127.0.0.1/index/mostrar

127.0.0.1 = localhost
 index = controller
mostrar = action

simples né, mas ainda podemos colocar uma variavel na url, veja o exemplo

http://127.0.0.1/index/mostrar/carro/1

e a action ficaria assim


  1. public function mostrarAction() {
  2.     $request = $this->getRequest();
  3.     if ($request->getParam('carro') == 1) {
  4.         $this->view->mostra = "carro = 1";
  5.     } else {
  6.         $this->view->mostra = "carro nao eh 1";
  7.     }
  8. }


na view apareceria a mensagem "carro = 1"

vamos entender a url agora

http://127.0.0.1/index/mostrar/carro/1


127.0.0.1 = localhost
 index = controller
mostrar = action
carro = variável
1 = valor da variável

espero que todos tenham entendido, qualquer duvida pode deixar um comentario

abraços




quinta-feira, 8 de setembro de 2011

Olá mundo, usando o controller

Boa tarde galera,
faz tempo que não coloco nada no meu blog, estou aprendendo a usar o Ubuntu por isso não fiz nenhum post.

Vamos ao que interessa, hoje vou ensinar a dar um "ola mundo" usando um controller.

Espero que todos voces estejam usando o zend framework e instalaram o zend usando o quick start.

entre no arquivo que fica nesse caminho application->controller->indexController, na index tem uma funciton chamada indexAction, nessa function escreva o seguinte codigo

$this->view->teste = "Olá Mundo";

Agora vamos para a view, que fica em, application->view->scripts->index->index.phtml

Apague todo o codigo que tem na index e cole esse codigo

  1. <?php
  2. echo $this->teste;
  3. ?>




pronto, agora voce conseguiu dar um olá mundo utilizando o controller do zend framework

Espero que eu tenha ajudado e qualquer duvida por deixar um comentario

abraços

quinta-feira, 4 de agosto de 2011

Configurando Zend Framework

Nesse tutorial vou ensinar a você como configurar rapidamente seu ZF.

Acesse o site http://framework.zend.com/













 Clique em quick start.

















Nessa nova tela, voce pode fazer o download do arquivo

















Agora voce salva o arquivo na pasta do seu projeto, no meu caso eu vou salvar na pasta que eu criei com o nome Projeto .




















Agora volte para a tela o clique em Download.



















Agora voce vai precisar da library do Zend, clique em latest release section.



















Vai abrir uma outra pagina com varias opções para download, eu recomendo fazer o download do Zend Framework Minimal Packge, é necessario fazer o cadastro para realizar o download.






Agora voce ja tem quase tudo certo para começar seu projeto, vamos para a pasta do seu projeto.
Descompacte seus arquivos, entre na pasta do quick start, copie os arquivos dentro dessa pasta e coloque na pasta raiz do seu projeto, no meu caso ficou C:\Projeto, e pode excluir a pasta ZendFrameworkQuickstart, agora va para a pasta do ZendFramework-1.11.10-minimal e copie a pasta library, va para a raiz do seu projeto e exclua a pasta library que exite, agora cole a pasta library e pode excluir a pasta ZendFramework-1.11.10-minimal.

Pronto, agora voce ja tem o ZF configurado em sua maquina.

Qualquer duvida, pode escrever nos comentarios