Usuario y Contyraseña en Visual Basic 6.0

Buenas,
Les cuento que tengo un programa en visual basic 6. y con una base de datos en access.
Esta base tienes varias tablas entre ella la de VALIDAR, esta tiene dos campos (nomusu y password) deseo hacer un nuevo formulario donde me pida mediante dos textbox el usuario y la clave, estos dos textos sean buscado en la BD de access(VALIDAR) si estos existen que entre al siguiente formulario sino salga msgbos de error.
Nota: son varios usuarios que manejan el programa
{"lat":5.61598581915534,"lng":-73.125}

1 respuesta

1
Respuesta de
El siguiente código realiza una serie de validaciones:
1.- Que los TextBox no estén vacíos.
2.- Que el nombre de usuario exista.
3.- Que la clave escrita sea correcta [esto en caso de que el usuario exista].
4.- Tanto el usuario como su clave son evaluados respetando el uso de mayúsculas o minúsculas [esto gracias a la función de VB "StrComp"].
Después de estas evaluaciones hay 2 opciones:
1.- Si tanto el nombre de usuario como la clave son correctos se cierra el formulario actual [llamémosle "FrmAcceso"] y se muestra un nuevo formulario [llamémosle "FrmMenu"].
2.- Si el nombre de usuario o la clave son incorrectos se envía un mensaje al usuario indicando un error.
NOTA: Se asume que se usa un método de conexión [yo uso una variable de tipo conexión: "Dim Cnx As New ADODB.Connection"] y el uso de sentencias SQL.
Private Sub CmdAceptar_Click()
    Dim Rst As New Recordset
    Dim i As Integer
    Dim ClaveCorrecta As Boolean
    If TxtUsuario.Text <> "" And TxtClave.Text <> "" Then
        Rst.Open "SELECT nomusu, passwor FROM Validar", Cnx, adOpenStatic, adLockPessimistic, adAsyncFetch
        If Rst.RecordCount Then
            For i = 1 To Rst.RecordCount
                If StrComp(Rst(0).Value, TxtUsuario) = 0 Then
                    If StrComp(Rst(1).Value, TxtClave) = 0 Then
                        ClaveCorrecta = True
                        UsuarioActivo = TxtUsuario
                        EntornoUsuario
                        Exit For
                    End If
                End If
                Rst.MoveNext
            Next i
        End If
        If ClaveCorrecta Then
            Unload Me
            FrmMenu.Show
        Else
            MsgBox "Ha escrito incorrectamente el nombre de usuario o la clave", _
            vbExclamation, "Atención"
        End If
    Else
        MsgBox "Debe escribir en nombre de usuario y la clave", _
        vbExclamation, "Atención"
    End If
End Sub
Espero te haya sido de utilidad, aunque si tienes alguna duda puedes consultarme nuevamente.
Saludos desde México. Juan Pablo E.P.
Antes que todo mil gracias Juanpa.
Copie tal cual como estaba escrito el código que me mandas, en el form1 los text lo llame como me lo indicas osea txtusuario y txtpasswor, apenas mando a correr el programa me sale un error indicándome esto: " el uso de la palabra new no es válido (aceptar o ayuda)
Y se ubica en:
private sub cmdaceptar_click()
dim rst as new recordset
Yo utilizo access como base de datos no se si esto sera el inconveniente, de toda formas espero tus comentarios.
Alejandro.
Colombia
Bueno, tal vez se trate de las referencias, así que en el "Menú: Proyecto > Referencias" debes activar la opción "Microsoft Activex Data Objects 2.x Library" [la "x" se refiere al decimal más alto, en mi caso por ejemplo queda activo "Microsoft Activex Data Objects 2.8 Library"] al hacer eso, VB ya puede "reconocer" los objetos de tipo Connection y Recordset. Si aún así no se soluciona el problema, consúltame de nuevo.
Saludos desde México. Juan Pablo E.P.
Saludos Juanpa,
Nada que le pego a balón... sigo fallando.
Ya hice lo que me digites y agregue el 2.8 y nada
Se que tienes toda la voluntad de ayudarme pero soy novato en esto, cuando tu hablas de una variable tipo conexión din cnx as new ADOBD. ¿Connection y el uso de sentencia sql a que te refieres? ¿Tengo qué colocarlo esa frase en algún lugar del formulario?
Nuevamente disculpame, espero que me entiendas no se mucho como tu.
sigueme ayudandome porfa.....
Mi correo es: alejandro.yc@hotmail.com si te parece agrégame a tus contactos en MSN messenger vale...
Alejandro.
Se me hace muy raro, pero te creo, debe haber añgún detallito que se no está escapando, mejor envíame tu proyecto a informacion_de_todo@yahoo.com.mx para analizarlo bien y darte una solución.
Saludos desde México. Juan Pablo E.P.
Añade un comentario a esta respuesta
Añade tu respuesta
Haz clic para o
Escribe tu mensaje
¿No es la respuesta que estabas buscando? Puedes explorar otras preguntas del tema Visual Basic o hacer tu propia pregunta: