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

informe accesos buenos y malos

Estas en el tema de informe accesos buenos y malos en el foro de ASP Clásico en Foros del Web. Hola: Gracias a Dazuaga que me contestó la consulta "contar accesos formulario", he desarrollado un código para almacenar en una base access los usuarios que ...
  #1 (permalink)  
Antiguo 01/12/2003, 05:50
Avatar de ludovico2000  
Fecha de Ingreso: noviembre-2003
Ubicación: Bizkaia
Mensajes: 1.315
Antigüedad: 20 años, 7 meses
Puntos: 2
informe accesos buenos y malos

Hola:

Gracias a Dazuaga que me contestó la consulta "contar accesos formulario", he desarrollado un código para almacenar en una base access los usuarios que acceden a una zona de acceso restringido y la fecha en que lo hacen. Igualmente, se capturan los "intentos" que no han tenido éxito en otra tabla, para así poder comprobar si hay alguien tratando de acceder a esa zona por el antiguo método de "ensayo-error".

Aún me queda un pequeño problema (Por el momento, sin capturar la IP, funciona perfectamente):

Con el código proporcionado por Dazuaga no captura la IP, sino que responde con el error:


Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][Controlador ODBC Microsoft Access] El campo 'TablaAccesos.IP' no puede ser una cadena de longitud cero.

/erosle.asp, line 27

¿Puede alguien ayudarme en la captura de la IP?

Si necesitáis el código completo, pedidlo.
  #2 (permalink)  
Antiguo 01/12/2003, 06:43
 
Fecha de Ingreso: mayo-2003
Mensajes: 866
Antigüedad: 21 años, 1 mes
Puntos: 0
¿Por que no pones aqui el codigo?
  #3 (permalink)  
Antiguo 01/12/2003, 06:55
Avatar de ludovico2000  
Fecha de Ingreso: noviembre-2003
Ubicación: Bizkaia
Mensajes: 1.315
Antigüedad: 20 años, 7 meses
Puntos: 2
Información

<%if request.form("usuario")="" then%>



<%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("../data/clientes.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

Insertar1 = "INSERT INTO TablaAccesos (ID_Usuario, Fecha_Acceso, IP) VALUES ('"&usuario &"', '"& Now() &"', '"& Var_IP &"')"

Conn.Execute(Insertar1)


Response.write "<body>...</body>"



end if
else

Insertar2 = "INSERT INTO BadAccesos (Bad_usuario, Bad_Fecha, Bad_clave) VALUES ('"&usuario&"', '"& Now() &"', '"&password&"')"

Conn.Execute(Insertar2)

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 "eroslesartu.htm"
end if

end if%>
  #4 (permalink)  
Antiguo 01/12/2003, 07:27
Avatar de jercer  
Fecha de Ingreso: octubre-2003
Mensajes: 373
Antigüedad: 20 años, 7 meses
Puntos: 13
Pon por el principio:

Var_IP = Session.SessionID
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 23:13.