Ir para conteúdo

POWERED BY:

Arquivado

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

razs

[Resolvido] retirar valor de javascript

Recommended Posts

Pessoal tenho este script javascript que me indica se uma password é fraca, media, forte ou segura. ele mostra os estado numa div, eu queria que no asp quando verifico o numero de caracteres e verifica-se se a div devolve forte ou segura como posso fazer essa ligação entre o asp e o javascript?

 

Segue o codigo:

 

verficação da password

<div class="field"><label>Password</label><input type="password" name="password" id="inputPassword" value=""  >*</div>
<div class="field"><label></label><div id="complexity" class="default">Password Strenght</div></div>

 

Javascript

/*
* --------------------------------------------------------------------
* Simple Password Strength Checker
* by Siddharth S, www.ssiddharth.com, hello@ssiddharth.com
* for Net Tuts, www.net.tutsplus.com
* Version: 1.0, 05.10.2009 	
* --------------------------------------------------------------------
*/

$(document).ready(function() 
{
var strPassword;
var charPassword;
var complexity = $("#complexity");
var minPasswordLength = 6;
var baseScore = 0, score = 0;

var num = {};
num.Excess = 0;
num.Upper = 0;
num.Numbers = 0;
num.Symbols = 0;

var bonus = {};
bonus.Excess = 3;
bonus.Upper = 4;
bonus.Numbers = 5;
bonus.Symbols = 5;
bonus.Combo = 0; 
bonus.FlatLower = 0;
bonus.FlatNumber = 0;

outputResult();
$("#inputPassword").bind("keyup", checkVal);

function checkVal()
{
init();

if (charPassword.length >= minPasswordLength)
{
	baseScore = 50;	
	analyzeString();	
	calcComplexity();		
}
else
{
	baseScore = 0;
}

outputResult();
}

function init()
{
strPassword= $("#inputPassword").val();
charPassword = strPassword.split("");

num.Excess = 0;
num.Upper = 0;
num.Numbers = 0;
num.Symbols = 0;
bonus.Combo = 0; 
bonus.FlatLower = 0;
bonus.FlatNumber = 0;
baseScore = 0;
score =0;
}

function analyzeString ()
{	
for (i=0; i<charPassword.length;i++)
{
	if (charPassword[i].match(/[A-Z]/g)) {num.Upper++;}
	if (charPassword[i].match(/[0-9]/g)) {num.Numbers++;}
	if (charPassword[i].match(/(.*[!,@,#,$,%,^,&,*,?,_,~])/)) {num.Symbols++;} 
}

num.Excess = charPassword.length - minPasswordLength;

if (num.Upper && num.Numbers && num.Symbols)
{
	bonus.Combo = 25; 
}

else if ((num.Upper && num.Numbers) || (num.Upper && num.Symbols) || (num.Numbers && num.Symbols))
{
	bonus.Combo = 15; 
}

if (strPassword.match(/^[\sa-z]+$/))
{ 
	bonus.FlatLower = -15;
}

if (strPassword.match(/^[\s0-9]+$/))
{ 
	bonus.FlatNumber = -35;
}
}

function calcComplexity()
{
score = baseScore + (num.Excess*bonus.Excess) + (num.Upper*bonus.Upper) + (num.Numbers*bonus.Numbers) + (num.Symbols*bonus.Symbols) + bonus.Combo + bonus.FlatLower + bonus.FlatNumber;

}	

function outputResult()
{
if ($("#inputPassword").val()== "")
{ 
	complexity.html("Password Strenght").removeClass("weak strong stronger strongest").addClass("default");
}
else if (charPassword.length < minPasswordLength)
{
	complexity.html("At least " + minPasswordLength+ " characters please!").removeClass("strong stronger strongest").addClass("weak");
}
else if (score<50)
{
	complexity.html("Weak!").removeClass("strong stronger strongest").addClass("weak");
}
else if (score>=50 && score<75)
{
	complexity.html("Average!").removeClass("stronger strongest").addClass("strong");
}
else if (score>=75 && score<100)
{
	complexity.html("Strong!").removeClass("strongest").addClass("stronger");
}
else if (score>=100)
{
	complexity.html("Secure!").addClass("strongest");
}


	$("#details").html("Base Score :<span class=\"value\">" + baseScore  + "</span>"
				   + "<br />Length Bonus :<span class=\"value\">" + (num.Excess*bonus.Excess) + " ["+num.Excess+"x"+bonus.Excess+"]</span> " 
				   + "<br />Upper case bonus :<span class=\"value\">" + (num.Upper*bonus.Upper) + " ["+num.Upper+"x"+bonus.Upper+"]</span> "
				   + "<br />Number Bonus :<span class=\"value\"> " + (num.Numbers*bonus.Numbers) + " ["+num.Numbers+"x"+bonus.Numbers+"]</span>"
				   + "<br />Symbol Bonus :<span class=\"value\"> " + (num.Symbols*bonus.Symbols) + " ["+num.Symbols+"x"+bonus.Symbols+"]</span>"
				   + "<br />Combination Bonus :<span class=\"value\"> " + bonus.Combo + "</span>"
				   + "<br />Lower case only penalty :<span class=\"value\"> " + bonus.FlatLower + "</span>"
				   + "<br />Numbers only penalty :<span class=\"value\"> " + bonus.FlatNumber + "</span>"
				   + "<br />Total Score:<span class=\"value\"> " + score  + "</span>" );
}

}
); 

 

 

parte em que verifico o numero de caracteres

Dim my_string
my_string=request.form("password")
if len(my_string)< "6" then
response.Write("<script>alert('Your password must be at least 6 digit!');location.href='index.asp'</script>")      
end if

Compartilhar este post


Link para o post
Compartilhar em outros sites

com ajax,

 

com o evento blur chama a página em ajax

$("#campopassword").blur(function(){
'aqui tem que recuperar o resultado da sua função que devolve forte etc.
var estado = outputresult() // -> devolve por exemplo "Secure!" 

		'chama a página via ajax

		$.ajax({
			type: "POST",
			url: "pagina.asp?estado="+estado,
			success: function(resultado){
				alert(resultado)
			}
		});


}):


depois na sua página "pagina.asp"

trata o resultado e devolve uma resposta


 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

ou com JQuery, que fica com menos código

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.