Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

RafaelCastro21

Força de senha

Recommended Posts

Boa noite,
Sou novo aqui no fórum, acabei de me cadastrar e também sou novo no mundo do PHP e JavaScript, estou desenvolvendo um sistema e estou tendo dificuldades em relação a um fato, eu fiz um formulário e tudo mais, mais estou querendo colocar aquela força de segurança que tem em senhas atualmente, que é quando o usuário digita a senha aparece do lado do formulário a força da senha...
Por exemplo
: Senha: 123 - Fraco
Senha: asdas2132 Forte
Então, eu fiz uma lógica com base em sites e fui fazendo a minha lógica...
Só que não está dando certo..
Eu digito um caracter e já aparece que tá forte... Está todo desgovernado e eu não sei onde eu conserto, quero a ajuda de vocês pra achar esse erro, pois, estou também aprendendo e quero muito aprender...

--------------------------------------- SCRIPT --------------------------------------------------

 <html lang="pt-br">
<head>
<title>SIEN - Sistema de Indice de Nota / Alterar Senha</title>
<meta charset="UTF-8"/>
<script>
function verifica_forca(senha){
forca = 0;
mostra = document.getElementById("mostra");
if((senha.length >= 4) && (senha.length <= 7)){
forca += 10;
}else if(senha.length>7){
forca += 25;
}
if(senha.match(/[a-z]+/)){
forca += 10;
}
if(senha.match(/[A-Z]+/)){
forca += 10;
}
if(senha.match(/[0-9]+/)){
forca += 10;
}
if(senha.match(/[a-z]+ AND [0-9]+/)){
forca += 20;
}
if (senha.match(/[a-z]+ AND [A-Z]+/)){
forca += 20;
}
if (senha.match(/[A-Z]+ AND [0-9]+/)){
forca += 20;
}
if (senha.match(/[a-z]+ AND [A-Z]+ AND [0-9]+/)){
forca += 25;
}
return mostra_res();
}
function mostra_res(){
if(forca <2){
mostra.innerHTML = '<tr><td bgcolor="red" width="'+forca+'"></td><td>Fraca </td></tr>';
}else if((forca >= 50) && (forca < 80)){
mostra.innerHTML = '<tr><td bgcolor="yellow" width="'+forca+'"></td><td>Justa </td></tr>';;
}else if((forca >= 80) && (forca < 90)){
mostra.innerHTML = '<tr><td bgcolor="blue" width="'+forca+'"></td><td>Forte </td></tr>';
}else{
mostra.innerHTML = '<tr><td bgcolor="green" width="'+forca+'"></td><td>Excelente </td></tr>';
}
}
function verifica_iguais(){
senha=document.getElementById("senha1");
senha2=document.getElementById("senha2");
 
iguais=document.getElementById("iguais");
if(senha1.value==senha2.value){
iguais.innerHTML = '<tr><td bgcolor="green"></td><td>Senhas digitadas são iguais. </td></tr>';
}else{
iguais.innerHTML = '<tr><td bgcolor="red"></td><td>Senhas digitadas não são iguais. </td></tr>';
}
 
}
</script>
</head>
<body>
 
<form name="teste" id="teste" method="post" onsubmit="return false">
<h3 align="center"> Alterar senha </h3>
 
<table align="center">
<tr>
<td>CPF</td>
<td><input type="text" name="cpf"></td>
</tr>
 
<tr>
<td>Senha atual</td>
<td><input type="password" name="senhadig"></td>
</tr>
 
<hr>
 
<tr>
<td>Nova senha</td>
<td><input type="password" name="senha1" id="senha1" onkeyup="javascript:verifica_forca(this.value)"></td>
<td id="mostra"> </td>
</tr>
 
<tr>
<td>Digite novamente a senha</td>
<td><input type="password" name="senha2" id="senha2" onkeyup="javascript:verifica_iguais()"></td>
<td id="iguais"> </td>
</tr>
 
<tr>
<td colspan="2" align="center"><input type="submit" name="alterarsenha" value="Salvar"></td>
</tr>
</table>
</form>
</body>
</html>
 
<?php
include "conecta.inc";
include "classes/class.altsenha.php";
 
$objeto = new AlterarSenha();
if (@$_POST['alterarsenha'] == 'Salvar') {
$resposta = $objeto -> Salvar();
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, Boa Tarde! Então abaixo alguns Links, que podem lhe ajudar:

http://www.jquerymagazine.com.br/artigo.php?id=236

http://codigofonte.uol.com.br/codigos/verificando-a-forca-da-senha-com-javascript

http://www.devmedia.com.br/verificando-a-forca-da-senha-com-o-plugin-jquery-complexify/27088

http://forum.imasters.com.br/topic/223878-como-testar-uma-senha-pra-saber-a-fora-dela/

 

OBS: observando aqui, ví que você pode desenvolver a Força da Senha, com Javascript (Usando Plugin Jquery), ou então usar a classe do PHP CrackLib (http://php.net/manual/pt_BR/crack.examples.php).

 

Boa Sorte!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alguns desses sites que você citou eu tinha tirado como base para fazer esse script, sendo que eu criei mais alguns IFS para fazer algo com mais segurança na força da senha, eu queria saber onde está o erro nesse script, porque pela minha visão está correto, mais na hora de executar a senha quando o campo está branco ele já fica excelente na força..

Preciso dessa ajuda...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.