Foros del Web » Programación para mayores de 30 ;) » .NET »

validar usuario

Estas en el tema de validar usuario en el foro de .NET en Foros del Web. despues de ver el articulo Restringir el acceso a páginas con ASP y intentar aplicarlo a mi web me he encontrado con multitud de problemas ...
  #1 (permalink)  
Antiguo 20/06/2002, 12:35
 
Fecha de Ingreso: junio-2002
Mensajes: 7
Antigüedad: 21 años, 10 meses
Puntos: 0
validar usuario

despues de ver el articulo Restringir el acceso a páginas con ASP y intentar aplicarlo a mi web me he encontrado con multitud de problemas a la hora de validar los pass.
este es el modelo original
<%if request.form("usuario")="" then%>
<form method="POST" action="login.asp">
<p> </p>
<p> </p>
<p> </p>
<p align="center"><%=request.querystr ing("msg")%></p>
<div align="center">
<center>
<table border="0" width="50%" bgcolor="#F2F2F2">
<tr>
<td width="100%" colspan="2" bgcolor="#0000FF">
<p align="center"><font color="#FFFFFF">Login</font></td>
</tr>
<tr>
<td width="50%">Usuario:</td>
<td width="50%"><input type="text" name="usuario" size="20"></td>
</tr>
<tr>
<td width="50%">Password: </td>
<td width="50%"> <input type="password" name="password" size="20"></td>
</tr>
<tr>
<td width="100%" colspan="2">
<p align="center"><input type="submit" value="Enviar" name="B1"></td>
</tr>
</table>
</center>
</div>
</form>


<%else
'eliminamos las posibles comillas de la entrada
'para evitar la introducción de sentencias SQL
usuario=replace(request.form("usuario"), "'","")
password=replace(request.form("password" ),"'","")

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("\dirBD\xxxxx.mdb"))
set rs = CreateObject("ADODB.Recordset")
sqltxt="Select * from usuarios where usuario='"&usuario&"' and password= '"&password&"'"
'response.write sqltxt
rs.Open sqltxt, conn
if not rs.eof then
' nos ha devuelto un registro, ahora miraremos si es valido
' con ello evitamos el ataque típico SQL
if rs("usuario")=usuario and rs("password")=password then
' si el usuario esta en la base de datos y la password coincide
session("autorizacion")=1
response.redirect "default.asp"
end if
else
session("autorizacion")=-1

end if
rs.close
set rs=nothing
conn.close
set conn=nothing
if session("autorizacion")=-1 or session("autorizacion")="" then
' no hemos encontrado el registro
' eso indica que el usuario y/o la password son erroneos
response.redirect "login.asp?msg=Usuario%20o%20password%20incor recta"
end if

end if%>
y este es el que yo adapte pero que no funciona

<%else
'eliminamos las posibles comillas de la entrada
'para evitar la introducción de sentencias SQL
usuario=replace(request.form("usuario"), "'","")
password=replace(request.form("password" ),"'","")

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("D:\Inetpub\portales\012345678 9\www.insideurope.com\configuracion_portal\Bases\m ovimiento.mdb"))
set rs = CreateObject("ADODB.Recordset")
sqltxt="Select * from usuarios where usuario='"&usuario&"' and password= '"&password&"'"
'response.write sqltxt
rs.Open sqltxt, conn
if not rs.eof then
' nos ha devuelto un registro, ahora miraremos si es valido
' con ello evitamos el ataque típico SQL
if rs("usuario")=usuario and rs("password")=password then
' si el usuario esta en la base de datos y la password coincide
session("autorizacion")=1
response.redirect "testdefault3.asp"
end if
else
session("autorizacion")=-1

end if
rs.close
set rs=nothing
conn.close
set conn=nothing
if session("autorizacion")=-1 or session("autorizacion")="" then
' no hemos encontrado el registro
' eso indica que el usuario y/o la password son erroneos
response.redirect "login2.asp?msg=Usuario%20o%20password%20inco rrecta"
end if

end if%>


creo que es problema del Server.MapPath pero no estoy muy seguro

ayudadme por favor

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 20:50.