Ir para conteúdo

POWERED BY:

Arquivado

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

xanburzum

Código que gera uma imagem de segurança

Recommended Posts

Código que gera uma imagem de segurança onde o usuário deve redigita-la,mesmo esquema em sites que tem aquelas imagens para formulários,chat,cadastros,webmail,etc, sem o uso de componentes.

 

codigo_segurança.asp

<%
'Gera imagem de segurança

Function gerarNumeros()
'Monta array com os caracteres que serão usados para gerar o código de segurança. Podem ser adicionados as letras em minusculas e/ou outros caracteres, só lembrando de criar as imagens para estes.
caracter = Array("0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z")

	'Usando 5 caracteres do array, a palavra é formada randomicamente
	Randomize
	For i = 1 to 5
		gerarNumeros = gerarNumeros & caracter(ubound(caracter) * Rnd)
	Next
End Function

codigo_seguranca = gerarNumeros()
%>

<script language="JavaScript">
function Monta()
{
var texto_seguranca = "<%= codigo_seguranca %>"; //Chama a função ASP e atribui o resultado à variavel texto_segurança
var comeco = "<img src='"; //Abre a tag da imagem
var meio = ".gif'"; //propriedades da imagem, aqui tambem pode ser configurado o tamanho/altura
var fim = "> "; //Fecha a tag da imagem

for(x = 0; x < texto_seguranca.length; x ++)
	{
		p_texto = texto_seguranca.charAt(x); //Pega caracter por caracter para formar a imagem de cada um
		document.getElementById("resultado").innerHTML += comeco + p_texto + meio + p_texto + fim; //Junta as tags da imagem
	}
}
</script>
<body onLoad="Monta()">
<form method="post" action="validar_image.asp" name="form">

<table border="0" cellspacing="0" cellpadding="0" width="420" height="36">
	<tr>
		<td align="center" background="imagem_fundo.gif" width="112" height="36"><span id="resultado"></span></td>
		<td width="70" align="center">Digite:</td>
		<td width="163"><input type="text" name="texto_imagem"></td>
		<td width="75"><input type="submit" value="Validar"><input type="hidden" value="<%= codigo_seguranca %>" name="hd_texto"></td>
	</tr>
</table>



</form>

validar_image.asp

<%
hd_texto = request("hd_texto")
texto_imagem = ucase(request("texto_imagem")) 'Como usamos no array somente letras maiusculas, então passamos tudo o que foi digitado para maiuscula.

if hd_texto <> texto_imagem then
%>
	<script>
	alert("Código de segurança inválido, tente novamente!")
	document.location.href = "codigo_seguranca.asp";
	</script>
<%
else
	response.write "Código validado."
end if
%>

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.