Boa tarde pessoal, ainda estou aprendendo por meio de materiais na internet como desenvolver utilizando o wi3, gostaria de contar com a ajuda de vocês, não encontrei nada na net a respeito disto acho que poderia até ajudar outras pessoas.
O problema é o seguinte, tenho um projeto e gostaria de aplicar um sistema de login, utilizando o md5, até o momento segui todos os materiais e o máximo que consegui fazer, foi criar um sistema que valida o login mas, sem utilizar nenhum tipo de criptografia. percebi no "Ajuda do WI3" que tem uma função |$md5(<valor>)$|
se alguém puder me ajudar como utilizo essa função? ou se existe outra maneira de grava no banco a senha do usuário em md5 e validar a mesma pelo sistema de login do wi3 (marcando a opção do ativar md5).
Obrigado!
Diego Vieira
Autor: Diego Vieira
1414 comentários
- crie um projeto chamado login_teste- crie uma pagina principal e desmarque seguranca ativa- crie uma pagina login- crie um pagina senha- crie a conexao com seu bd (no meu teste mysql)- va em projeto e marque a opcao ativar login, usar md5, selecione seu bd, coloque em pagina inicial login e grave- va na pagina login e chame o wizard e em acao do form escolha principal- va na pagina senha e chame o wizard e marque altera senha e escolha principal- va na definição do login e ajuste o sql para o correto (no help explica como deve ser para md5)ex: select senha_md5, codigo, nome from usuario where login = ?|tmp.user|- Pronto agora eh so chamar principal.wsp que por nao estar logado vai remeter ao login, e quando locar corretovai para o principal
Para o alterar senha funcionar vc precisa editar os codigos comentados no pos-pagina de senha
Espero que ajude
funcionario.matricula, funcionario.login, funcionario.senha
FROM funcionario
WHERE (funcionario.login = ?|tmp.user|)
AND (funcionario.senha = md5(?|tmp.pass|)) deu certo, sendo que no banco eu coloquei a senha dele como md5(123) equivalente a 202cb962ac59075b964b07152d234b70 com isso consegui validar o usuário de acordo com o hash da senha dele. agora a parte de trocar os query da pos-página que nao entendi muito bem... tentei modificar os insert e update colocando no lugar do tmp.pass, md5(?|tmp.pass|)) para que a mesma seja armazenada no banco em md5... mas não funcionou, está certo o jeito que eu usei o md5?
- crie uma pagina principal e desmarque seguranca ativa (Será a pagina principal do sistema logado. Se o usuario nao estiver logado nao deve ter acesso a essa pagina)
- crie uma pagina login
- crie um pagina senha
- crie a conexao com seu bd (no meu teste mysql)
- va em projeto e marque a opcao ativar login, usar md5, selecione seu bd, coloque em
pagina inicial login e grave (faça apenas isso)
- va na pagina login e chame o wizard e em acao do form escolha principal (o wizard ira gerar uma pagina prontinha com md5 para funcionar que depois se vc desejar podera alterar)
- va na pagina senha e chame o wizard e marque altera senha e escolha principal (serve para criar uma pagina que permite que o usaurio logado altere sua senha)
- va na definição do login e ajuste o sql para o correto (no help explica como deve ser para md5)(quando o login eh md5 o primeiro campo obrigatoriamente deve ser a senha que esta no banco guardada em md5)
ex: select senha_md5, codigo, nome from usuario where login = ?|tmp.user|
- Pronto agora eh so chamar principal.wsp que por nao estar logado vai remeter ao login, e quando logar correto vai para o principal Para o alterar senha funcionar vc precisa editar os codigos comentados no pos-pagina de senha (Esqueca a pagina de alterar senha por enquanto) Se vc analisar o fonte de login vc vera que o submit faz algumas operaçoes em js para cuirptografar o md5 de forma automatica. Espero que ajude
Robério.
Foi inserida a condição abaixo, que identifica se o código do usuário é diferente de nulo (o usuário está logado?)
|pvt.login.cod_usuario|!=
Foi configurado o objeto "dentro" da sessão:
pvt.log
Se a condição for verdadeira. foi inserido o valor abaixo, que chama a função eval citada pelo nosso amigo Marciel. Essa função incrementa o objeto pvt.log com 1 unidade:
|$eval(|pvt.log|+1)$|
Depois de salvar as alterações, lá em EDITAR HTML foi incluída a seguinte linha:
pvt.log = |pvt.log| <br>