Fabyo 66 Denunciar post Postado Abril 28, 2008 Zend Framework - Exemplos basicos I Pessoal segue a sequencia de mais um tutorial sobre ZF quem não viu os tutoriais anteriores aqui estão os links: http://www.meu_site.com.br rodando esse link automaticamente o ZF procura pelo arquivo: IndexController.php e qualquer link que voce criar dentro do index: http://www.meu_site.com.br/index/pagina1 http://www.meu_site.com.br/index/pagina2 http://www.meu_site.com.br/index/pagina3 http://www.meu_site.com.br/index/pagina4 o ZF ira procurar dentro do arquivo IndexController.php o action com o mesmo nome: <?php class IndexController extends Zend_Controller_Action { public function indexAction() { } public function pagina1Action() { } public function pagina2Action() { } public function pagina3Action() { } public function pagina4Action() { } } e consequentemente ele ira procurar pelo layout correpondente dentro da pasta scripts/index scripts/index/index.phtml scripts/index/pagina1.phtml scripts/index/pagina2.phtml scripts/index/pagina3.phtml scripts/index/pagina4.phtml se voce não quiser ou não precisar de um layout para uma pagina basta avisar o ZF que não tera layout assim: public function indexAction() { $this->_helper->removeHelper('viewRenderer'); } com isso voce nao precisa ter um index.phtml e o ZF não ira dar erro tentando procura-lo. agora um exemplo simples para envio de dados de um formulario e recebendo usando ZF no exemplo em anexo esta o sistema funcionando, por isso não se preocupem com detalhes para verificar se um formulario foi enviado usem: if ($this->_request->isPost()) {} para receber um dado de um campo GET ou POST use: $campo = $this->_request->getPost('campo'); só que ja tem uma vantagem, se o $_POST["campo"] não existir o ZF vai tratar e a $campo tera um valor vazio, e sem ter erro na pagina. segurança, o ZF tem uma classe para cuidar da segurança de recebimento de dados, com varias opções, iremos tratar só do filtro trim e strip_tags como no exemplo: $filter = new Zend_Filter(); $filter->addFilter( new Zend_Filter_StringTrim ) ->addFilter( new Zend_Filter_StripTags ); $campo = $filter->filter($this->_request->getPost('campo')); com isso eu ja pego a $_POST["campo"], passo a função trim e strip_tags e automaticamente passando pelo filtro ela ja se torna uma string segura para ser usada ou salva em banco de dados. Zend_InicioII.zip qualquer duvida sobre o exemplo só perguntar OBS: Pasta Library vazia. Proximo tutorial: >> Plugins Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Abril 28, 2008 humm... Legal, mais só uma dúvida básica aqui, dentro desse: public function indexAction() { }o que devo colocar ai deve ser sempre: $this->view->link = "PAGINA AQUI"; ? quando se trata de links ? ai ficaria assim como no arquivo IndexController: public function indexAction() { $this->view->link = "PAGINA AQUI"; } ??? e no caso essa função dentro da class: public function pagina2Action(){} foram criadas por você ? então quando eu for criar um link eu posso fazer isso: public function validarAction(){}... e na hora de usar a class eu já sei... Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Abril 28, 2008 Isso mesmo todos os nomes foi eu que criei voce pode criar o link que quiser por exemplo public function cadastroAction(){} public function meulinkAction(){} public function salvarAction(){} etc..., isso fica a seu gosto. e dentro dos action voce coloca o que quiser o nome link foi eu que criei voce coloca o nome que quiser exemplo public function indexAction() { $this->view->var1 = "Valor da var1"; $this->view->var2 = "Valor da var2"; $this->view->var3 = "Valor da var3"; } e no index.phtml: <?php echo $this->var1."<br />"; echo $this->var2."<br />"; echo $this->var3."<br />"; ?> como voce citou o action "validar", veja uns exemplos sobre validações de formularios: http://akrabat.com/2008/02/21/simple-zend_form-example/ http://framework.zend.com/manual/en/zend.filter.input.html no primeiro link acima se voce olhar vera que o proprio ZF ja tem meios de validar um formulario, entao nao seria necessario criar um action validar, só usar o if ($form->isValid($formData)) {, como mostra o exemplo acima Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Abril 28, 2008 humm... certinho, valeu, peguei o embalo da coisa aqui entendi Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Abril 28, 2008 beleza, é facil, só pegar o jeito, voce vai ver como fica mais facil fazer as coisas e mais rapido, fors o sistema que passa a ficar mais profissional e seguro Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Abril 28, 2008 É, eu tava dando uma olhada na estrutura de algumas class aqui, são bem profissionais, além do mais é bom porque já começo OOP por um bom caminho, pois eu sou fraco em class ainda. Enquanto aos links assima, são bem legais os exemplos, dão outra dimensão para validação de dados. Compartilhar este post Link para o post Compartilhar em outros sites
Ghean 0 Denunciar post Postado Abril 28, 2008 Muito bacana... Agora acho que Zend irá ganhar novos usuarios. Parabéns Fabyo, você é o cara :kiss: Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Abril 29, 2008 dúvidas em alguns pontos: - como crio esses links? - a init(), qual a função dela? - para cada método criado dentro de IndexController.php, deve criar um *.phtml dentro de script/index, correto? bem, criei e etc...só que percebi que a referências as variaveis criadas.. ( link ou var1 ...) é feita dentro de index.phtml. sendo assim, qual a função de ter um layout pra cada já que é o index.phtml que trata todos(no exemplo: imprime as variaveis)? os arquivos pagina1.phtml , pagina1.phtml[b/] ... vão ficar vazios? se puderem ajudar-me a entender...agradeço. Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Abril 29, 2008 - como crio esses links? do mesmo jeito que esta no exemplo, crie um nome do link, a pagina com o mesmo nome e o metodo com o mesmonome+Action - a init(), qual a função dela? a função inicial que inicia antes dos outros metodos para ver mais detalhes e outros metodos como esse: http://framework.zend.com/manual/en/zend.c...ler.basics.html - para cada método criado dentro de IndexController.php, deve criar um *.phtml dentro de script/index, correto? Correto [quotebem, criei e etc...só que percebi que a referências as variaveis criadas.. ( link ou var1 ...) é feita dentro de index.phtml. sendo assim, qual a função de ter um layout pra cada já que é o index.phtml que trata todos(no exemplo: imprime as variaveis)? nao cada variavel tem o seu valor definido pelo metodo se no indexAction eu crio uma variavel ela vai valer para index.phtml, posso ter variaveis com nomes iguais, mas o valor dela é colocado no metodo os arquivos pagina1.phtml vão ficar vazios? Nao, as paginas.phtml sao suas paginas como é só um exemplo elas nao tem conteudo, mas no seu caso quando for fazer algum site usando ZF voce coloca o conteudo que precisar Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Abril 29, 2008 certo fabyo. os links eu crio dentro do index principal do ZF? a questão dos métodos consegui compreender..somente os links que não.. []´s Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Abril 29, 2008 os links que cria apartir do seu primeiro controller, por padrao é o indexcontroller.php com o metodo indexAction() mas isso tudo pode mudar conforme for preciso mas por padrao voce cria os links apartir do index e os links voce cria no templates no exemplo de templates eu criei 4 exemplos de links só dar uma olhada Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Abril 29, 2008 sim fabyo. o que digo é: esses links seriam as tags <a href='' ? desculpe te incomodar, porque não consegui fazer esse exemplo. Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Abril 29, 2008 nao os links que eu falo sao o resultado onde o link ira levar o usuario voce pode criar seus link HTML normalmente usando <a href="" isso nao muda nada o local onde seu link aponta que sim, por exemplo <a href="index/listar">listar</a> quando o usuario clicar nesse link ele ira para a pagina www.meusite.com.br/index/listar e o metodo que o ZF ira procurar no indexcontroller.php é o listarAction public function listarAction() { } entendeu? Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Abril 30, 2008 em qual arquivo irei colocar ? <a href="index/listar">listar</a> Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Abril 30, 2008 nos templates, nos arquivos .phtml Compartilhar este post Link para o post Compartilhar em outros sites
high 0 Denunciar post Postado Junho 28, 2008 Zend Framework - Exemplos basicos I Pessoal segue a sequencia de mais um tutorial sobre ZF quem não viu os tutoriais anteriores aqui estão os links: http://www.meu_site.com.br rodando esse link automaticamente o ZF procura pelo arquivo: IndexController.php e qualquer link que voce criar dentro do index: http://www.meu_site.com.br/index/pagina1 http://www.meu_site.com.br/index/pagina2 http://www.meu_site.com.br/index/pagina3 http://www.meu_site.com.br/index/pagina4 o ZF ira procurar dentro do arquivo IndexController.php o action com o mesmo nome: <?phpclass IndexController extends Zend_Controller_Action{ public function indexAction() { } public function pagina1Action() { } public function pagina2Action() { } public function pagina3Action() { } public function pagina4Action() { } } Não sei o que fiz de errado, mas não consigo obter essa configurção. Sempre que crio por exempo: index/pagina1/ preciso criar um controlador para a pagina1 e criar um index action. Alguém pode me ajudar? Obrigado Rogers Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Junho 30, 2008 Como você ta criando os links? ou você ta testando o exemplo do topico? Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Junho 30, 2008 Como você ta criando os links? ou você ta testando o exemplo do topico? Compartilhar este post Link para o post Compartilhar em outros sites
high 0 Denunciar post Postado Julho 3, 2008 Ai onde está. veja o link: http://www.consultingpalace.com/projects/africa/ muitos links estão por fazer mas veja o que o código de erro pede. Podes me elucidar um pouco? Obrigado Rogers Compartilhar este post Link para o post Compartilhar em outros sites
high 0 Denunciar post Postado Julho 3, 2008 Ah esqueci-me user:vamsi pass:seoseo Compartilhar este post Link para o post Compartilhar em outros sites