Ir para conteúdo

POWERED BY:

Arquivado

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

marcelocardoso

Login

Recommended Posts

Amigos!

 

Preciso da ajuda dos senhores, pois estou com problemas para resolver esta página de login, veja:

 

Oque estou tentando fazer é o seguinte:

Pela lógica teria que ser assim

 

 

1) verificar login

2) se não funcionar mostra o response.write SEU LOGIN NÃO CONFERE!

3) se funcionar, deve verificar no banco se o cara que passou pelo login está bloqueado

4) se estiver bloqueado, deve mostrar response.write VOCE ESTA BLOQUEADO!

5) caso não estiver bloqueado deve gravar os dados da session e redirecionar para default.asp

 

Mas isto não está acontecendo, estou me logando com o usuario que está bloqueado e não funciona, ele não mostra o RESPONSE.WRITE VOCE ESTÁ BLOQUEADO, mas vai direto para a página DEFAULT.asp

 

 

 

MEU CODIGO:

<!--#include file="conn.asp" --><%  VerificadorA = Request.Form("acesso_login")  VerificadorA = Replace(VerificadorA,"'","''")  VerificadorA = Replace(VerificadorA,"#","''")  VerificadorA = Replace(VerificadorA,"$","''")  VerificadorA = Replace(VerificadorA,"%","''")  VerificadorA = Replace(VerificadorA,"¨","''")  VerificadorA = Replace(VerificadorA,"&","''")  VerificadorA = Replace(VerificadorA,"'or'1'='1'","''")  VerificadorA = Replace(VerificadorA,"--","''")  VerificadorA = Replace(VerificadorA,"insert","''")  VerificadorA = Replace(VerificadorA,"drop","''")  VerificadorA = Replace(VerificadorA,"delet","''")  VerificadorA = Replace(VerificadorA,"xp_","''")  VerificadorA = Replace(VerificadorA,"select","''")  VerificadorA = Replace(VerificadorA,"*","''")  VerificadorB = Request.Form("acesso_senha")  VerificadorB = Replace(VerificadorB,"'","''")  VerificadorB = Replace(VerificadorB,"#","''")  VerificadorB = Replace(VerificadorB,"$","''")  VerificadorB = Replace(VerificadorB,"%","''")  VerificadorB = Replace(VerificadorB,"¨","''")  VerificadorB = Replace(VerificadorB,"&","''")  VerificadorB = Replace(VerificadorB,"'or'1'='1'","''")  VerificadorB = Replace(VerificadorB,"--","''")  VerificadorB = Replace(VerificadorB,"insert","''")  VerificadorB = Replace(VerificadorB,"drop","''")  VerificadorB = Replace(VerificadorB,"delet","''")  VerificadorB = Replace(VerificadorB,"xp_","''")  VerificadorB = Replace(VerificadorB,"select","''")  VerificadorB = Replace(VerificadorB,"*","''")   login_autocom_login   = VerificadorA  login_autocom_senha   = VerificadorB    SET LOGADOS = CX.Execute("SELECT * FROM USUARIOS WHERE Login ='"& login_autocom_login &"' AND Senha='"& login_autocom_senha &"'")   IF LOGADOS.EOF THEN						    Response.Write "SEU LOGIN NÃO CONFERE!"							  ELSE	  			 BLOQ = LOGADOS("Bloqueado")		  IF BLOQ = TRUE THEN			 Response.Write "VOCE ESTA BLOQUEADO!"			 			 ELSE		  			 Session("123NOME")		  = LOGADOS("CNOME")			 Session("123EMAIL")		 = LOGADOS("CMAIL")	  		  END IF		  Response.Redirect "default.asp"		     END IF%>
Podem me ajudar, estou me matando em tentar resolver.

Deve ser nos if.

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

seu IF final cara coloque assim

 

IF BLOQ = TRUE THEN
			 Response.Write "VOCE ESTA BLOQUEADO!"
			
			 ELSE
		  
			 Session("123NOME")		  = LOGADOS("CNOME")
			 Session("123EMAIL")		 = LOGADOS("CMAIL")
			Response.Redirect "default.asp" 
	  
		  END IF

caso pesista coloque a condição real para o IF

 

IF BLOQ = "1" THEN
			 Response.Write "VOCE ESTA BLOQUEADO!"
			
			 ELSE
		  
			 Session("123NOME")		  = LOGADOS("CNOME")
			 Session("123EMAIL")		 = LOGADOS("CMAIL")
			Response.Redirect "default.asp" 
	  
		  END IF

é só um exemplo, se for "1" ele é bloqueado se não ele prossegue!!!!

 

boa sorte cara

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não tem haver com a pergunta, mas só para esclarecer, a linha abaixo nao faz sentido, só está aumentando o código:

VerificadorB = Replace(VerificadorB,"'or'1'='1'","''")

 

Se o 1 for substituído por 2, 3, a1, xy, etc... a pessoa consegue logar da mesma forma...

 

O que salva seu código é a primeira linha

VerificadorB = Replace(VerificadorB,"'","''")

 

 

Quanto a pergunta, o problema parece ser que o REDIRECT esta fora do segundo IF. Assim escreve e redireciona, não exibindo para o usuário. A primeira solução do Ted k' parece ser a melhor.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara o o que o hargon explicou é que você eestá fazendo duas coisas que "literalmente" dão na mesma, você bloqueou o acesso das aspas simples duas vezes qua aki

 

VerificadorB = Replace(VerificadorB,"'or'1'='1'","''")

 

e a outra aki

 

VerificadorB = Replace(VerificadorB,"'","''")

 

você colocou codigos desnecessários, o codigo VerificadorB = Replace(VerificadorB,"'","''") já basta, não precisa do anterior!!!

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.