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

ola comunidade!ex: quero acessar a pagina de cadastro de noticias, mas como nao estou logado, qdo tento acessar, ela automaticamente vai para a área de login. Após o login, o legal seria q a pagina fosse redirecionada para aquela q tentei acessar anteriormente. Como faço isso?! nao tenho ideia...agradeço desde ja a ajuda de todos...!marcos hunger.

Compartilhar este post


Link para o post
Compartilhar em outros sites

usa variaveis de servidor pra issopega com request.servervariables("HTTP_REFERER")

Compartilhar este post


Link para o post
Compartilhar em outros sites

armazena isto em variavel e quando logar manda pra lá...

Compartilhar este post


Link para o post
Compartilhar em outros sites

entao, veja se estou fazendo certo...

 

a variavel eu fiz assim:

 

<!--asp1--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'>[tr]<td>ASP </td>[/tr][tr]<td id='CODE'><!--easp1--><font face="Verdana"><font color="#9B0000"><%</font>

<font color="#FF8040">'Variável para redirecionar à pagina que o user tentou acessar antes do login</font>

<font color="8E7144">Dim</font> redireciona

<font color="#269900">redireciona</font> = <font color="#0080C0">request</font><font color="#8C00AA">.</font><font color="#979700">servervariables</font>(<font color="red">"HTTP_REFERER"</font>)

<font color="#9B0000">%></font></font><!--asp2--></td>[/tr]</table><div class='postcolor'><!--easp2-->

 

ae tem este trecho no codigo, q eu acredito ser onde deve ser colocada a variavel...(ali onde coloquei os asteriscos)

 

<!--asp1--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'>[tr]<td>ASP </td>[/tr][tr]<td id='CODE'><!--easp1--><font face="Verdana"><font color="#9B0000"><%</font><font color="#FF8040">'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</font>

<font color="8E7144">if</font> <font color="#0080C0">rs</font><font color="#8C00AA">.EOF</font> <font color="8E7144">then</font>

<font color="#0080C0">response</font><font color="#8C00AA">.write</font><font color="red">"Senha ou Login inválido! Volte e tente novamente."</font>

<font color="8E7144">else</font>

<font color="#979700">session</font>(<font color="red">"logado"</font>)<font color="#269900"></font>=<font color="red">"sim"</font>

<font color="#0080C0">response</font><font color="#8C00AA">.redirect</font> ****************

<font color="8E7144">end</font> <font color="8E7144">if</font>

<font color="#9B0000">%></font></font><!--asp2--></td>[/tr]</table><div class='postcolor'><!--easp2-->

 

só nao sei como eu declaro isso ali..... http://forum.imasters.com.br/public/style_emoticons/default/blush.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

response.redirect(redireciona)

Compartilhar este post


Link para o post
Compartilhar em outros sites

pior q eu estava tentando isso antes, e como nao estava dando certo eu perguntei. mas acho q sei o q é.pq o sisteminha de login aqui tem uma pagina login.htm com os fomularios. qdo preenchidos ele vai pro login.asp consultar. acredito q, qdo ele da OK no login.asp, redireciona pra pagina anterior, q é a login.htm ...... entao nunca sai dali! deve ser isso, ne?!

Compartilhar este post


Link para o post
Compartilhar em outros sites

com certeza é isso...por que precisa passar por esta pagina htm, manda ir direto pra pagina asppoderia ir passando isto de pagina em pagina, mas tem que ser pelo menos ASP

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao sei.... tp, como eu nao sabia fazer, foi o exemplo q peguei. ela tem o formulario em uma pagina htm, e a consulta é feita depois do submit, por uma pagina em asp.

 

no caso eu poderia jogar o conteudo da login.htm na login.asp?! vou colocar o codigo das duas aqui pra você ver se rola...

 

LOGIN.HTM

<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">  <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>  
LOGIN.ASP

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

<%response.buffer="true"%>

 

<%

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

Dim redireciona

redireciona = request.servervariables("HTTP_REFERER")

%>

 

<%

'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"

response.redirect(redireciona)

end if

%>

[/tr]

Compartilhar este post


Link para o post
Compartilhar em outros sites
[tr][/tr][tr][/tr]
ASP <%@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"

response.redirect(redireciona)

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>

 

cara juntei tudo no mesmo arquivo, pega isso e salva num login.asp, nem testei pode ter algum errinho, e em todo lugar que você chamava login.htm, chama login.asp...

Compartilhar este post


Link para o post
Compartilhar em outros sites

opa....vlwentao, fiz o q você falou, mas no fim, qdo faço o login, ele acessa mas volta à pagina login.asp, do mesmo jeito.... como um refresh....eu fiz o negocio direito.... tentei acessar uma pagina sem estar logado, dae ele direciona pra login.asp . fiz o login, e qdo cliquei no OK ele ficou na mesma pagina, só atualizou, como se tivesse "voltado" à mesma pagina.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seguinte, quando você sai do Loguin.asp para o script que efetiva realmente o login, o Referer é a "Login.asp", creio que você deve pegar ele na Login.asp e passar como parametro, tanto faz com um campo oculto ou diretamente na query.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seguinte, quando você sai do Loguin.asp para o script que efetiva realmente o login, o Referer é a "Login.asp", creio que você deve pegar ele na Login.asp e passar como parametro, tanto faz com um campo oculto ou diretamente na query.IF request("redireciona") <> "" THENredireciona = request("redireciona")aqui pergunto se já passou pelo login, ou seja não pega pelo http referer de novoELSEredireciona = request.servervariables("HTTP_REFERER")aqui pergunto se não passou pelo login, ou seja tem que pegar a origemEND IF

ei salgado mas foi isso que tentei fazer, mas não testei, não sei o que ta rolando...olha aqui no topo da page

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eita, ó eu passando vergonha de não ler o tópico todo.

 

Maus ai.

 

Vamos a um teste, no lugar do response.redirect coloque um

Response.Write Redireciona

Response.End

[/tr]

Compartilhar este post


Link para o post
Compartilhar em outros sites

acho que você passou o redirect como querystring e recuperou como se fosse form

 

tenta assim:

 

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

<%response.buffer="true"%>

 

<%

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

Dim redireciona

redireciona = request.form("redireciona")

IF redireciona = "" THEN

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"

response.redirect(redireciona)

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%>" ><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

fala tr, beleza?velho, continua voltando no login.asp......... do mesmo jeito!! to louco aqui ja!! rs

Compartilhar este post


Link para o post
Compartilhar em outros sites

não recuperei como form...simplesmente recuperei...do jeito que tá ele tenta pegar do form, querystring, cookie, etc...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Passe um link que com certeza me leve à tela de login, assim poderei testar melhor, você mandou o Link direto para ela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

marioufpa > não sabia disso,hunger > mudei lá em cima tenta agoraPS não esquece de fachar o navegador e percorrer o caminho até login.asp

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.