
18/08/2005, 09:01
|
 | | | Fecha de Ingreso: julio-2005
Mensajes: 56
Antigüedad: 19 años, 9 meses Puntos: 0 | |
Matame Tú, Pero No Dejes Que Me Mate Esta Incertidumbre... Que Falla En Este Login? Bueno la función va perfectamente, sin errores ni problemas. Todo ok.
El único y así se convierte en gran fallo es que sólo reconoce una contraseña de toda la tabla (la primera) y reconoce a todos los usuarios que le propongas, incluso si no están en la tabla... es muy raro, no?
A continuación adjunto estrutura de tabla y código. TABLA: ejemplo
ID_Usuario---- autonumerico
usuario--------texto
password------texto CODIGO que comprueba usario&password
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<html>
<head>
<%
function chkString(string)
string = replace(string,"'", "''")
chkString = string
end function
%>
</head>
<body>
<%
Dim usuario, password, oConn, RS 'Primero nos fijamos si ambos campos fueron completados.
'Si no se cumple, redireccionamos a pagina1.asp
If Request.Form("usuario") = "" OR Request.Form("password") = "" then
Response.Redirect "../usuaris/usuari.asp"
Else 'Guardamos los datos del Form en variables
usuario = Request.Form("usuario")
password = Request.Form("password") 'Conectamos a nuestra BD.
Set oConn = Server.CreateObject ("ADODB.Connection")
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("ejemplo.mdb") 'Seleccionamos de la tabla solo los registros que concuerden con el usuario del Form. 'ejemplo es como se llama la tabla de la base de datos a consultar
strSQL = "SELECT * FROM ejemplo WHERE usuario='"&chkString(Request.Form("usuario"))&"' AND password='"&chkString(Request.Form("password"))&"' "
Set rs = Server.CreateObject ("ADODB.RecordSet")
RS.Open "ejemplo", oConn 'Si el valor EOF (fin de la tabla elegida) es verdadero, no existe el usuario.
If (RS.EOF or = true) then
Response.Write "Ese usuario no existe"
ElseIf RS.Fields("password") = password then
'Si el campo de la tabla es igual a nuestra variable, estas logueado.
Response.Write "Bienvenido <B>"& usuario &"</B>"
Else
'Otra cosa, seria cuando el password no es la que seleccionamos.
Response.Write "Esa contraseña no concuerda con el usuario ingresado"
End If 'Limpiamos y cerramos.
RS.Close
oConn.Close
Set RS = Nothing
Set oConn = Nothing
End If
%>
</body>
</html>
Hay algo que esté mal? ue vosotros podais ver? Muchas gracias por vuestro tiempo y conocimientos
__________________ :adios:Lo que no me mató, me hizo más fuerte (eso va por ti asp!)
Última edición por iutunoi; 18/08/2005 a las 09:05
Razón: para que los colores sean más legibles
|