Redireccion de vuelta después de un login


http://www.asptutor.com

Redireccion de vuelta después de un login

Pregunta y respuesta extraída de los Foros de AspTutor

Pregunta:

me gustaría que alguien me dijera como redireccionar un navegador hacia donde venia, ejemplo, un usuario no tiene logging, lo mando a la pagina del login y luego lo redirecciono a donde estaba con su loggin de alta!!!

Respuesta dada por Luisdop

Lo primero que debes hacer, es saber en todo momento donde te encuentras, así sabes donde tienes que volver (se podría usar javascript y volver con history.go(-1) pero la página no se refrescaría)... para eso puedes usar la variable de servidor PATH_INDEX, como lo mejor es un ejemplo, aquí tienes uno:

 

1º En la página donde haces la comprobación del login de usuario, imaginate que la comprobación es ver si la variable "acceso_permitido" tiene el valor True y que la página del login se llama login.asp y está en el directorio raiz de la web. En la página escribiriamos (antes de la etiqueta <head>)
<%
Path_index=Request.ServerVariables("PATH_INFO")
If acceso_permitido<>True Then Response.redirect("/login.asp?Origen=" & Path_index)
%>

2. En la página del login escribiremos:

Origen=Request.Querystring("Origen")
'....
'Comprobamos los datos
'....
'Y si la contraseña es correcta (Login_ok=true)lo redireccionamos de vuelta a casa
If Login_ok=True Then
Response.redirect(Origen)
else
Response.redirect(/acceso_denegado.htm)
end if