AYUDA URGENTE: INICIAR SESION CON PASSWORD

POWERED VISUAL
22 de Diciembre del 2004
HOLA A TODOS LOS FANÁTICOS DE VISUAL BASIC, TENGO UN PROBLEMO QUE NECESITO CORREGIR URGENTEMENTE. TENGO UNA BASE DE DATOS EN ACCESS, LA CUAL LA UTILIZO EN VISUAL BASIC 6.0, Y PARA TENER ACCESO A ELLA NO TENGO NI UN PROBLEMA,. MI SISTEMA CONTIENE UN INICIO DE SESIÓN QUE PIDE NOMBRE DE USUARIO Y SU CORRESPONDIENTE PASSWORD, DICHOS DATOS SE ENCUENTRAN EN LA TABLA "EMPLEADO" COMO "NomEmp" Y "CveEmp", DONDE NomEmp ES EL NOMBRE DEL USUARIO Y CveEmp ES EL PASSWORD. EL CÓDIGO QUE UTILIZO ES EL SIGUIENTE: AL PRESIONAR EL BOTON "BtnAcp"

Private Sub BtnAcp_Click()
Set DB = New Connection
DB.CursorLocation = adUseClient
DB.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "MiBase.mdb"
Set DBID = New Recordset
DBID.Open "SELECT * FROM Empleado where NomEmp ='" & TxtEmp.Text & "'", DB, adOpenStatic, adLockOptimistic
If DBID.EOF Then
MsgBox "No hay usuarios con ese nombre"
TxtEmp.SetFocus
Else
If DBID(0) = UCase(Password.Text) Then
MsgBox "Usuario Identificado", vbInformation, "Contraseña"
Else
MsgBox "Contraseña incorrecta", vbCritical, "Contraseña"
Password.SetFocus
End If
End If
DBID.Close
Set DBID = Nothing
End Sub

EL PROBLEMA CONSISTE EN QUE AL INTRODUCIR EL NOMBRE DE USUARIO SÍ LO IDENTIFICA, PERO SIEMPRE LA CONTRASEÑA ES INCORRECTA SIENDO LA MISMA QUE SE ENCUENTRA EN LA BASE DE DATOS. ES MUY EXTRAÑO PORQUE EL MISMO CÓDIGO LO HE UTILIZADO EN OTROS SISTEMAS Y NO ME HA DADO PROBLEMAS......

ALGUIEN PUEDE AYUDARME?PLEASE
ESTOY DESESPERADO, NO SÉ QUÉ PASA
NECESITO AYUDA ¡¡¡¡¡¡URGENTEMENTE!!!!!!!
.....GRACIAS

l_island
22 de Diciembre del 2004
Por que no evitas problemas e incluyes el Password en la consulta SQL?
DBID.Open "SELECT * FROM Empleado where NomEmp ='" & TxtEmp.Text & "' AND CveEmp = '" & UCASE(Password.txt) & "'",...

Esa es una posibilidad la otra es hacer:
...
If DBID("CveEmp") = UCase(Password.Text) Then
MsgBox "Usuario Identificado", vbInformation, "Contraseña"
Else
MsgBox "Contraseña incorrecta", vbCritical, "Contraseña"
Password.SetFocus
End If
...
No sea que el campo "CveEmp" tenga un índice distinto de 0.

Por cierto, ¿el Password, con seguridad, lo estás almacenando en mayúsculas?, esa sería una explicación a tu problema.

Saludos!!
l_island