Não foi possível carregar o Diqus. Se você é o moderador, por favor veja o nosso guia de problemas.
Muito bom mesmo. Funcionou perfeitamente!
Obrigado Vlademiro.
Gostaria de agradecer seu howto, muito claro as informações e a forma de implementar, parabéns! me ajudou bastante!
Obrigado Kusunoki.
Boa noite Fernando, tudo bem? Gostei bastante da aula. Muito útil e bem detalhada para o entendimento dos mais leigos, tipo eu.
Mas uma coisa me deixa com um pé atrás, que é a questão do uso do Zend_Db_Table. Usá-lo é realmente fácil para algumas coisas como inserções e seleções básicas ao banco de dados.
Você poderia me falar como fazer seleções mais avançadas usando o Zend_Db_Table? Preciso, por exemplo, selecionar o nome, telefone, email e cidade de um usuário, mas a cidade desse usuário não está na mesma tabela, ela está sendo referenciada. Como faço esse tipo de busca?
Você teria que configurar os relacionamentos e obter as linhas através dos métodos disponíveis no Zend_Db_Table_Abstract. Mais informações: http://framework.zend.com/m... att.
Fernando bom dia.
Muito bom a explicação.
Fiquei com uma dúvida:
Eu tenho um modulo admin e la dentro, todo controller vai ter q verificar se ja foi autenticado, com excessao do controller de login
É possivel aplicar isso direto para o modulo admin ou tenho q aplicar a verificacao para cada controller?
Obrigado
Você pode criar um plugin que verifica se é o módulo admin e faz essa verificação. Att.
Fernando, excelente iniciativa. Elaborar material destinado a zend framework enriquece o desenvolvimento de aplicações para web.
Eu queria uma ideia: Depois que eu caio na condicional "if ( $result->isValid() ) {"
gostaria de pegar o "id" do usuário para eu poder fazer um update no campo de último login. Qual a melhor maneira de fazer isso?
Ah, funcionou tudo certo.
Aliás, minha lógica está até errada.
Conseguiu chegar a uma solução? Att.
olá parabens pelo site, sou de foz tmb. E gostaria de tirar uma duvida.
segue o erro: Fatal error: Class 'Application_Forms_Login' not found in D:\www\application\controllers\AuthController.php on line 23
abaixo meu aquivo php
line 23 => $form = new Application_Forms_Login();
eu acredito que seja algum problema com loader, pois quando eu faço o require manualmente da classe o projeto funciona corretamente.
obrigado, aguardo sua resposta.
Valmir, solucionei, da uma olhada =D
http://www.zendbrasil.com.b...
[]s
Ola boa tarde. O link esta off, como foi que resolveu o lance do loader por favor?
Obrigado por compartilhar, att.
Valmir, também estou com o mesmo problema.
Conseguiu solucionar?
[]s
Excelente tutorial!!
O melhor que encontrei, até o momento, sobre zend_auth e zend_acl. Simples e eficiente. Espero que continue escrevendo outros.
Obrigado
Uma dúvida: qual a diferença e quando usar cada uma das opções?
$this->_helper->redirector->goToRoute( array('controller' => 'index'), null, true);
$this->_helper->redirector('/index');
$this->_redirect('/index);
Para ser bem sincero não sei te dizer com exatidão a principal diferença entre cada um. Dê uma olhada na documentação para conferir o que cada um faz. Att.
Fernando, muito bacana seu artigo.
Porém me surgio duas dúvidas especificas:
1) É possivel ter dois campo de identificação(setIdentityColumn). Como por exemplo:
$authAdapter->setTableName('usuarios')
->setIdentityColumn('login')
->setIdentityColumn('perfil')
->setCredentialColumn('senha');
2) Outra dúvida, neste mesmo tuturial que vc fez, quando tenho dois usuários com senhas diferentes, ele me informa que o usuário ou senha estão incorretos. Como resolver isso?
Nunca vi um cenário parecido Michael, teria que investigar mais a fundo ou talvez implementar um Adapter customizado para a autenticação. Att.
Fernando, passando pra deixar um "muito obrigado". Segui o código sem grandes dificuldades, funcionou blz. O único problema foi o "sha1" sendo passando como responsabilidade do banco. O postgres, por exemplo, não tem essa função nativamente. Resolvi pelo PHP mesmo. Valeu! Continue com o blog!
Obrigado Hiarison e muito bem lembrado, caso o banco de dados não suporte o algoritmo de criptografia é necessário modificá-lo ou criptografar pelo PHP mesmo. Att.
Engraçado é que ele autentica na base corretamente.. só que no outro controller ele não identifica como logado.
Vou te mandar um e-mail daí conversamos...
Não amigo, o meu controlador principal é o index mesmo.. indexcontroller. Criei o controlador auth e coloquei as funções de login. Na verdade só usei o index ao invés do noticias.
Estranho tem algo errado... Já que toda a parte de storage já está bem redonda no componente, era para estar funcionando...
No controller de login ele retorna o array com os dados certos, no indexcontroller não. Retorna null.
Retorna um Array? Tem algo estranho... Você testou se da forma como foi demonstrada no artigo, o controlador de notícias funciona corretamente?
Estou com um problema. Quero redirecionar pro /index do controller principal. Oq acontece é que ele autentica OK na base, retorna certo mas qdo dou o redirect pro /index no index ele não reconhece a identidade e ai redireciona de volta para o /auth.
Elizandro, verifique como está o retorno do método Zend_Auth::getInstance()->getIdentity(), após efetuar o login e na action de seu controller. Abraços
Amigo, primeiramente quero dizer q seu blog é simplismente fantástico. Mas quando sai o artigo sobre Autorização Zend??
Valeu!
[+1] conseguiu explicar muito claramente o que eu queria, sou iniciante em Zend e não tive dificuldades
Obrigado Cassiano.
Olá Cleiton, obrigado pelo comentário. O artigo está sendo escrito, conforme vai sobrando tempo, acredito que para esta semana ele fica pronto.
Att.
Fernando,
Estou tentando aplicar o seu artigo e esbarrei em um problema, não consigo exibir o form de login, sendo assim poderia disponibilizar o source de seu artigo ? desde já obrigado pela atenção.
Os fontes do artigo encontram-se no meu repositório GitHub: http://github.com/fernandom.... Att.
Bom dia, Fernando.
Primeiro gostaria de parabenila-lo por compartilhar seus conhecimentos, todos os seus tutoriais são muito bem explicados.
Eu tenho uma dúvida, caso eu queira fazer o usuário se logar com o nome de usuario ou senha, como eu faria?
Att.
Brun Souza