Ir para conteúdo

POWERED BY:

Arquivado

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

hunger

redirecionar após login

Recommended Posts

fala....beleza?

 

entao, vou te falar q eu ja tinha desistido.... ia colocar normal mesmo.... a hora q logasse eu jogava sempre pra uma pagina e o sujeito se vira pra ir na q ele quer.... isso aqui estava sem fim!!! e eu to cheio dos atrasos aqui!!!

 

bom, vou postar o q estava, pq acabei testando tbem coisas q o pessoal falou e tals....

 

nas paginas "normais":

 

ASP [/tr][tr]<%

if session("logado")="" then

response.redirect "login.asp?url=" & request.servervariables("script_name")

end if

%>

[/tr]

 

e na login.asp:

 

ASP [/tr][tr]if rs.EOF then

response.write"Senha ou Login inválido! Volte e tente novamente."

else

session("logado")="sim"

redireciona = request.querystring("URL")

redireciona = ".." & redireciona

response.redirect redireciona

' eu acho que nao precisa do .. mas se quiser deixa ai...

 

end if

END IF

[/tr]

 

acontece q assim, depois q você faz o login, está direcionando para a pagina inicial do site!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

porque o código q vai nas páginas normais está incorreto, tenta assim:

ASP [/tr][tr]<%

if not session("logado")="sim" then

response.redirect "login.asp?url=" & request.servervariables("script_name")

end if

%>

[/tr]

 

o código da página login.asp não está inteiro? não falta a parte do html?posta todo ele.

login.asp

ASP [/tr][tr]

posta todo ele

[/tr]

Compartilhar este post


Link para o post
Compartilhar em outros sites

vou fazer esse teste e te falo.

 

a pagina login.asp colocarei abaixo (antes era separado, tinha uma login.asp e uma login.htm, acabamos juntando td no começo deste topico)

 

ASP [/tr][tr]<%@Language=VBScript%>

<%response.buffer="true"%>

 

<%

'Variável para redirecionar à pagina que o user tentou acessar antes do login

Dim redireciona

IF request("redireciona") <> "" THEN

redireciona = request("redireciona")

ELSE

redireciona = request.servervariables("HTTP_REFERER")

END IF

%>

 

<%

IF request("acao") = "login" THEN

 

'Recupero o texto que foi escrito no formulário

vlogin=request.form("login")

vsenha=request.form("senha")

 

'Faço a conexão com o banco de dados

db="e:\home\dad\dados\admlogin.mdb"

Set con = Server.CreateObject( "adodb.Connection" )

con.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & db & ";"

set rs=con.execute("select * from login where login='"&vlogin&"' and senha='"&vsenha&"'")

 

'Se não for encontrado nenhum registro aparecerá uma mensagem de erro. Caso contrário o visitante receberá um nome de sessão para poder navegar nas demais paginas protegidas e será redirecionado para a página protegida

if rs.EOF then

response.write"Senha ou Login inválido! Volte e tente novamente."

else

session("logado")="sim"

redireciona = request.querystring("URL")

redireciona = ".." & redireciona

response.redirect redireciona

' eu acho que nao precisa do .. mas se quiser deixa ai...

 

end if

END IF

%>

 

 

 

<html>

<style type="text/css">

<!--

@import url("../webdad.css");

-->

</style>

 

<title>DAD Engenharia - Intranet | ADM | Login</title><body>

 

<table width="400" height="132" cellpadding="0" cellspacing="0">

<tr>

<td width="126"><img src="../noticias/images/menu_adm.gif" width="160" height="340"></td>

<td width="58"> </td>

<td width="214"><form action="login.asp?acao=login&redireciona=<%=redireciona%>" method="POST">

<p class="texto">Login<br>

<input name="login" type="text" id="login">

</p>

<p class="texto">Senha<br>

<input name="senha" type="password" id="senha">

</p>

<input type="submit" value="Entrar">

</form></td>

</tr>

</table>

</body></html>

[/tr]

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloquei o trecho q você mandou.... continua direcionando para a pagina inicial, apos o login.talvez seja algo mesmo na login.asp....

Compartilhar este post


Link para o post
Compartilhar em outros sites

agora é questão de honra!

ASP

<%

if not session("logado")="sim" then

response.redirect "login.asp?url="& request.servervariables("URL")

end if

%>

 

 

ASP [/tr][tr]

<%@Language=VBScript%>

<%response.buffer="true"%>

 

<%

'Variável para redirecionar à pagina que o user tentou acessar antes do login

Dim redireciona

IF request.querystring("url") <> "" THEN

redireciona = request.querystring("url")

'ELSE

'redireciona = request.servervariables("HTTP_REFERER")

END IF

%>

 

<%

IF request.form("acao") = "login" THEN

 

'Recupero o texto que foi escrito no formulário

vlogin=request.form("login")

vsenha=request.form("senha")

 

'Faço a conexão com o banco de dados

db="e:\home\dad\dados\admlogin.mdb"

Set con = Server.CreateObject( "adodb.Connection" )

con.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & db & ";"

set rs=con.execute("select * from login where login='"&vlogin&"' and senha='"&vsenha&"'")

 

'Se não for encontrado nenhum registro aparecerá uma mensagem de erro. Caso contrário o visitante receberá um nome de sessão para poder navegar nas demais paginas protegidas e será redirecionado para a página protegida

if rs.EOF then

response.write"Senha ou Login inválido! Volte e tente novamente."

else

session("logado")="sim"

redireciona = request.form("redireciona")

redireciona = ".." & redireciona

response.redirect (redireciona)

' eu acho que nao precisa do .. mas se quiser deixa ai...

' eu acho eheh, mas com os parenteses

 

end if

END IF

%>

 

 

 

<html>

<style type="text/css">

<!--

@import url("../webdad.css");

-->

</style>

 

<title>DAD Engenharia - Intranet | ADM | Login</title><body>

 

<table width="400" height="132" cellpadding="0" cellspacing="0">

<tr>

<td width="126"><img src="../noticias/images/menu_adm.gif" width="160" height="340"></td>

<td width="58"> </td>

<td width="214"><form action="login.asp" method="POST">

<input name="redireciona" type="hidden" value = "<%=redireciona%>" >

<input name="acao" type="hidden" value = "login" >

<p class="texto">Login<br>

<input name="login" type="text" id="login">

</p>

<p class="texto">Senha<br>

<input name="senha" type="password" id="senha">

</p>

<input type="submit" value="Entrar">

</form></td>

</tr>

</table>

</body></html>

[/tr]

Compartilhar este post


Link para o post
Compartilhar em outros sites

AEEEEEEEEEEEEEEEEEEEEE PQP.................... finalmente!!!!!!!!!!!!!!!!!!!!

 

parabens velho..... agora foi!! questao de honra mesmo....acertou no meio da fuça!

 

valeu tr..... #@?$%~ ajuda tu deu!! o topico ficou um pouco grande ne....rs

 

obgdo!

 

abço!! http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

 

marcos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

so uma coisinha, hunger...seu site esta sem protecao contra aspas...sem estar logado, acessa utilizando como login e senha' or '1'='1voce consegue fazer login...tira as aspas do login e senha com replace(vlogin, chr(39), chr(32) )ok?

Compartilhar este post


Link para o post
Compartilhar em outros sites

é verdade....eu sabia q tinha um lance assim, mas como nao sei fazer.........onde exatamente eu coloco esse replace(vlogin, chr(39), chr(32) ) ? é exatamente assim q tenho q colocar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

fala!!

 

entao, é q eu sou uma porta com ASP..... vou colocar o codigo aqui, você poderia indicar o lugar?! é q nao quero fazer m*** depois de tanto trabalho em acertar td na pagina....rs

 

vlw!!!

 

ASP [/tr][tr]<%@Language=VBScript%>

<%response.buffer="true"%>

 

<%

'Variável para redirecionar à pagina que o user tentou acessar antes do login

Dim redireciona

IF request.querystring("url") <> "" THEN

redireciona = request.querystring("url")

'ELSE

'redireciona = request.servervariables("HTTP_REFERER")

END IF

%>

 

<%

IF request.form("acao") = "login" THEN

 

'Recupero o texto que foi escrito no formulário

vlogin=request.form("login")

vsenha=request.form("senha")

 

'Faço a conexão com o banco de dados

db="e:\home\dad\dados\admlogin.mdb"

Set con = Server.CreateObject( "adodb.Connection" )

con.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & db & ";"

set rs=con.execute("select * from login where login='"&vlogin&"' and senha='"&vsenha&"'")

 

'Se não for encontrado nenhum registro aparecerá uma mensagem de erro. Caso contrário o visitante receberá um nome de sessão para poder navegar nas demais paginas protegidas e será redirecionado para a página protegida

if rs.EOF then

response.write"Senha ou Login inválido! Volte e tente novamente."

else

session("logado")="sim"

redireciona = request.form("redireciona")

redireciona = ".." & redireciona

response.redirect (redireciona)

' eu acho que nao precisa do .. mas se quiser deixa ai...

' eu acho eheh, mas com os parenteses

 

end if

END IF

%>

 

 

 

<html>

<style type="text/css">

<!--

@import url("../webdad.css");

-->

</style>

 

<title>DAD Engenharia - Intranet | ADM | Login</title><body>

 

<table width="400" height="132" cellpadding="0" cellspacing="0">

<tr>

<td width="126"><img src="../noticias/images/menu_adm.gif" width="160" height="340"></td>

<td width="58"> </td>

<td width="214"><form action="login.asp" method="POST">

<input name="redireciona" type="hidden" value = "<%=redireciona%>" >

<input name="acao" type="hidden" value = "login" >

<p class="texto">Login<br>

<input name="login" type="text" id="login">

</p>

<p class="texto">Senha<br>

<input name="senha" type="password" id="senha">

</p>

<input type="submit" value="Entrar">

</form></td>

</tr>

</table>

</body></html>

[/tr]

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui:

vlogin=request.form("login")

vsenha=request.form("senha")

[/tr]
Você coloca:
vlogin = Replace(request.form("login"), "'", "''")

vsenha = Replace(request.form("senha"), "'", "''")

[/tr]
Pois assim você estará realmente inserindo/selecionando o registro com a aspa simples no BD, isso deve ser feito em qualquer dado que será usado na SQL que vai ao BD. Tando Inserts quanto Updates e Selects.

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.