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

Guardar datos si password es correcto

Estas en el tema de Guardar datos si password es correcto en el foro de ASP Clásico en Foros del Web. Hola, estoy haciendo una pagina que recoge informacion capturada y pide una clave para poder guardar esos datos y enviar por mail dicha información, este ...
  #1 (permalink)  
Antiguo 04/02/2004, 11:48
Avatar de zink  
Fecha de Ingreso: mayo-2002
Ubicación: Aguascalientes
Mensajes: 125
Antigüedad: 22 años
Puntos: 0
Guardar datos si password es correcto

Hola, estoy haciendo una pagina que recoge informacion capturada y pide una clave para poder guardar esos datos y enviar por mail dicha información, este es el código que tengo:

<%
Dim password, oConn, RS
password = Trim(Request.Form("requiredclave"))
password=replace(request.form("password"),"'","")
Set oConn = Server.CreateObject ("ADODB.Connection")
Set RS = Server.CreateObject ("ADODB.RecordSet")
oConn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("password.mdb")
sql = "SELECT * FROM dictamina WHERE dependencia='"&password&"'"
RS.Open sql, oConn, 1, 1
If RS.EOF = True then
Response.write ("<script language='javascript'>window.alert ('Clave Incorrecta')</script>")
ElseIf RS.Fields("requiredclave") = password then
'.......

'Hago la conexion ala BD, guardo los datos que recoge del formulario, envia un mail por medio de cdonts, y redirecciono a otra pagina.
'......

Else
Response.write ("<script language='javascript'>window.alert ('Clave Incorrecta')</script>")
End If
RS.Close
oConn.Close
Set RS = Nothing
Set oConn = Nothing
%>

Al cargar la pagina siempre me envia el Alert de que la clave es incorrecta, y una vez que lleno el formulario y escribo la clave correcta me devuelve el mismo alert y no guarda los datos.

Alguna sugerencia o cambio en el código?

Gracias.
  #2 (permalink)  
Antiguo 04/02/2004, 12:46
 
Fecha de Ingreso: octubre-2003
Ubicación: Granada
Mensajes: 481
Antigüedad: 20 años, 8 meses
Puntos: 1
amigo si ya de por si el rs.eof =false quiere decir que el password se ha encontrado entoncs para que vuelves a hacer la comparacion de nuevo¿

ElseIf RS.Fields("requiredclave") = password then

bueno tb en la sentencia sql pon like en vez de '=' prueba a ver

un saludo
__________________
la duda es el principio del saber
  #3 (permalink)  
Antiguo 04/02/2004, 19:32
Avatar de zink  
Fecha de Ingreso: mayo-2002
Ubicación: Aguascalientes
Mensajes: 125
Antigüedad: 22 años
Puntos: 0
Gracias cristian4042 por responder, ya intenté lo que me comentas (quité el ElseIf RS.Fields("requiredclave") = password then y utilicé LIKE) y aun no funciona, me sigue sacando el alert al principio y cuando guardo los datos me vuelve a salir y no guarda nada.
  #4 (permalink)  
Antiguo 06/02/2004, 12:20
Avatar de zink  
Fecha de Ingreso: mayo-2002
Ubicación: Aguascalientes
Mensajes: 125
Antigüedad: 22 años
Puntos: 0
Hola.
Alguien que me de una mano?

Gracias
  #5 (permalink)  
Antiguo 06/02/2004, 16:03
 
Fecha de Ingreso: febrero-2004
Ubicación: Puebla, Pue., México
Mensajes: 15
Antigüedad: 20 años, 4 meses
Puntos: 0
Hola, me parece que no anidaste bien los if, te sugiero esto:

if (RS.EOF) then
'Si el registro no se encontró
Response.write ("<script language='javascript'>window.alert ('Clave Incorrecta')</script>")
else
' Hubo coincidencia de algún registro, para evitar un ataque tipo LIKE de SQL esta bien que compares si el campo es igual a la contraseña
if (RS.Fields("requiredclave") = password ) then
' Instrucciones para enviar tu correo
else
Response.write ("<script language='javascript'>window.alert ('Clave Incorrecta')</script>")
end if
end if


Atte.
__________________
Julio Alberto Villegas Mireles
  #6 (permalink)  
Antiguo 11/02/2004, 13:47
Avatar de zink  
Fecha de Ingreso: mayo-2002
Ubicación: Aguascalientes
Mensajes: 125
Antigüedad: 22 años
Puntos: 0
Gracias por responder javmireles.
Probé lo que me dices y no me funciona, verifiqué bien los IF Y END IF y no encuentra el password.

Ahorita todo el codigo lo estoy poniendo en la misma pagina, crees que sea mejor si manda a llamar a otra pagina que verifique la existencia de ese password?

Gracias
  #7 (permalink)  
Antiguo 11/02/2004, 14:43
Avatar de PMP
PMP
 
Fecha de Ingreso: febrero-2003
Ubicación: Chacabuco - Buenos Aires
Mensajes: 214
Antigüedad: 21 años, 3 meses
Puntos: 1
Hola.
Si te fijas bien a la variable "password" le estas dando el valor de Request.Form("requiredclave") y luego se lo cambias por Request.Form("password").

password = Trim(Request.Form("requiredclave"))
password = replace(request.form("password"),"'","")


Saludos!!!
  #8 (permalink)  
Antiguo 11/02/2004, 16:10
Avatar de zink  
Fecha de Ingreso: mayo-2002
Ubicación: Aguascalientes
Mensajes: 125
Antigüedad: 22 años
Puntos: 0
ups tienes razon, pequeño gran error.

Ya funciona

Gracias
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 12:33.