Foros del Web » Programando para Internet » ASP Clásico »

Ayuda con session y redirect

Estas en el tema de Ayuda con session y redirect en el foro de ASP Clásico en Foros del Web. Hola que tal, necesito hacer lo siguiente: Tengo una pagina login.asp cuando se accede a ella uno se loguea y lo redirecciona a otra llamada ...
  #1 (permalink)  
Antiguo 06/01/2003, 21:49
 
Fecha de Ingreso: julio-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 255
Antigüedad: 21 años, 10 meses
Puntos: 0
Ayuda con session y redirect

Hola que tal, necesito hacer lo siguiente:

Tengo una pagina login.asp cuando se accede a ella uno se loguea y lo redirecciona a otra llamada paginar.asp , lo que quiero hacer yo es que si alguien intenta acceder a paginar.asp que lo redireccione a login.asp y ahi poniendo su user y pass lo direccione ahora si a paginar.asp


La verdad no se como hacerlo y agrederia mucho su ayuda


aca abajo les dejo los 2 codigos de las paginas:


login.asp


<!-- #include file="i_utils.asp" -->
<title>.:: InfoSistemasWeb.Com.Ar >>>Paginación de datos ::.
</title>
<%
dim user_name
dim password
dim submit
'dim registerlink
dim login_form_sql

sub request_login_form
''' request expected input parameters for this form
user_name = request("user_name")
password = request("password")
submit = request("submit")
registerlink = request("registerlink")
end sub

sub validate_login_form
''' request and validate data entered from this form
user_name = trim(request("user_name"))
if user_name = "" then
error_list.add "564336","username must be specified."
b_error = true
end if
password = trim(request("password"))
if password = "" then
error_list.add "564337","password must be specified."
b_error = true
end if
submit = trim(request("submit"))
registerlink = trim(request("registerlink"))
end sub

sub get_defaults_login_form
''' set default values for this form
submit = "LOGIN"
registerlink = "click aqui para registrarte"
end sub

sub db_select_login_form
login_form_sql = "SELECT " & _
"user_name, " & _
"password FROM Users" & _
""
end sub

do_search = request("do_search")
''' request action
action = lcase(request("action"))
''' action case handler
select case action

case "login"
' verify and select the user from database
validate_login_form
do_login


case "logout"
' end the user's current session
session.abandon


end select
':: handle the default case(s) for each form (separate from action= parameter)
get_defaults_login_form

%>

<!-- #include file='i_header.asp' -->
<!-- #include file='i_menu.asp' -->


<%
display_errs
display_msg
%>

<table class='headerTable'>
<tr>
<td class='headerTD'>
Login
</td>
</tr>
</table>
<table >
<form name="login_form" action="" method="get" >
<tr>
<td class='labelTD'>username</td>
<td class='dataTD' width='80%'>
<input type=text name="user_name" size="" maxlength="" value="<% =user_name%>">
</td>
</tr>
<tr>
<td class='labelTD'>password</td>
<td class='dataTD' >
<input type=password name="password" size="" maxlength="" value="<% =password %>">
</td>
</tr>
<tr>
<td class='labelTD'></td>
<td class='dataTD' >
<input class=cmd type=submit name="submit" value="LOGIN" >
</td>
</tr>
<tr>
<td class='labelTD'>Usuario Nuevo?</td>
<td class='dataTD' >
<a href="register.asp"><% =registerlink %></a>
</td>
</tr>
<input type=hidden name="action" value="login">

</form>
</table>



<!-- #include file=i_footer.asp -->


<%
':: assure that any db resources are freed
on error resume next
rs.Close
set rs = NOTHING
cn.Close
set cn = NOTHING
user_cn.Close
set user_cn = NOTHING
on error goto 0
%>



paginar.asp


<%
Response.Buffer = True
Session.Abandon

%>

<html><head>
<link rel="stylesheet" type="text/css" href="default.css">
<title>.:: InfoSistemasWeb 2002 D.C &gt;&gt;&gt;Sistema de Paginación Ver. 1.1 ::.
</title>

<script language="Javascript">

var vie=
parseFloat(navigator.appVersion.slice(navigator.ap pVersion.indexOf("MSIE")+4,navigator.appVersion.le ngth));
function sinmenu()
{
event.cancelBubble = true;
event.returnValue = false;
return false;
}
function noclicderecho(e)
{
if (navigator.appName == 'Netscape' && (e.which == 3 || e.which == 2)) return false;
else
if (navigator.appName == 'Microsoft Internet Explorer' && (event.button == 2 || event.button == 3))
{
if (vie < 5) // -- para el IE4 -- \\
{
alert('Puedes personalizar este mensaje');
return false;
}
else
if (vie >= 5) // -- para el IE5 -- \\
{
document.oncontextmenu = sinmenu;
return false;
}
}
return true;
}
document.onmousedown=noclicderecho;

// -- Desabilita el clic derecho en las capas (layers) -- \\

if (document.layers)window.captureEvents(Event.MOUSED OWN);
window.onmousedown=noclicderecho;
</script>

<frame><noframe></frame></noframe>


</head>

<p> </p>
<div align="left">
<table border="1" width="99%" height="121" id="AutoNumber1">
<tr>
<td width="100%" height="19"><font color="#FF0000">NOTA IMPORTANTE:</font><p> </p>
<p> </p>
<p><font color="#FF0000">ESTE ES UN ESPACIO Y PRIVADO, SI UD. A INGRESADO
A EL EN FORMA ERRÓNEA POR FAVOR SALIR POR DONDE HA INGRESADO Y ENVIAR UN
EMAIL A:</font>
<a href="mailto:[email protected]?subj ect=Usuarios no permitidos en paginación de datos">
WEBMASTER</a></p>
<p> </p>
<p> </p>
<p align="center"><font color="#FF0000">Dirección IP Grabada:<b> <!-- #include file="easyip.asp" -->
</b>[tu dirección IP ha sido grabada en nuestro sistema por seguridad]</font></td>
</tr>
<tr>
<td width="100%" height="83">
<p align="center"> </p>
<p align="center"><font color="#0066CC">PAGINACION DE DATOS VER. 1.1 -
DESARROLLO POR INFOSISTEMASWEB.COM.AR</font></td>
</tr>
<tr>
<td width="100%" height="3">VER PAGINACION DE
<a href="paginar_foros_home.asp">FOROS HOME</a></td>
</tr>
<tr>
<td width="100%" height="3">VER PAGINACION DE DATOS
<a href="paginar_libro.asp">LIBRO DE VISITAS</a></td>
</tr>
<tr>
<td width="100%" height="3">VER PAGINACION DE DATOS
<a href="paginar_forosoporte.asp">FOROS SOPORTE</a></td>
</tr>
<tr>
<td width="100%" height="2">VER PAGINACION DE DATOS
<a href="paginar_registro_usuarios_home.asp">REGISTRO DE USUARIOS
HOME</a></td>
</tr>
<tr>
<td width="100%" height="2">VER PAGINACION DE DATOS
<a href="paginar_colaboraciones.asp">REGISTRO DE USUARIOS
COLABORACIONES</a></td>
</tr>
<tr>
<td width="100%" height="2">VER PAGINACION DE DATOS DE
<a href="paginar_mailing_list.asp">MAILING LIST</a></td>
</tr>
<tr>
<td width="100%" height="2">VER PAGINACION DE DATOS DE
<a href="paginar_downloads.asp">DOWNLOADS</a></td>
</tr>
<tr>
<td width="100%" height="2"></td>
</tr>
</table>
</div>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center">Reservados todos los derechos -
<a href="http://www.infosistemasweb.com.ar">InfoSistemasWeb.Com.Ar 2002 D.C</a></p>
</html>
__________________
Pablo Maurelli
Noc IT - Monitoreo y Administración de Red
Gerencia de Infraestructura IT
E-Mail: [email protected] (MSN)
  #2 (permalink)  
Antiguo 06/01/2003, 22:15
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
no se, no se... está dificil (al menos a esta hora y revisando los archivos así por arriba)


Pero fijate lo siguiente:

En el archivo login.asp sólo hace referencia a una variable session en la parte que dice:


case "logout"
' end the user's current session
session.abandon


Eso quiere decir que, en el caso que sea "logout", terminar la sesion del usuario... pero: DÓNDE LA ESTÁS CREANDO Y CON QUÉ NOMBRE???


Luego, en el archivo paginar.asp, lo primero que hacés es eliminar la variable de session:


Response.Buffer = True
Session.Abandon



Así que no me queda nada claro...

No será que hay alguna referencia a la variable session que permite el acceso al sistema en un include (tal vez i_utils.asp, i_header.asp, i_menu.asp, i_footer.asp o easyip.asp)
  #3 (permalink)  
Antiguo 07/01/2003, 04:09
Avatar de meru-kun  
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 854
Antigüedad: 21 años, 6 meses
Puntos: 0
Juraria que yo ya habia respondido a esto... Aunque no me hagas mucho caso. Podrias probar a:
En paginar.asp, poner un If THen Else
If session("usuario") <> "" And session("password") <> ""
Then
' codigo que quieras poner
Else
response.redirect "login.asp"

Y en login.asp, creas otro if then else
If session("usuario") <> "" And session("password") <> ""
response.redirect "paginar.asp"
Else
'aqui pones los campos pra introducir datos


Espero serte de ayuda.
__________________
Tu portal de manga y anime.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:40.