Parte 6 – Inserción de datos en la base de datos, y uso de datos Encriptados, Login

En esta lección ya entramos al manejo de base datos y aprenderán como se insertan datos en una base de datos MS Access.

Iniciando

En un modulo de Visual Basic se van a crear los sub procedimientos necesarios para hacer la consulta a la base de datos y validar el usuario. Se va a usar una función para encriptar la contraseña de la base de datos, de esta manera en caso de que alguien entre a nuestra base de datos no pueda saber cual es la contraseña. Lo que hace este software muy seguro.

Se creo un registro en la tabla Usuarios que son los datos del administrador.

En Visual Basic, se tomo una función de la página recursosvisualbasic.com.ar para encripdar datos, esta se uso para encriptar la contraseña de los usuarios.

Esta es la función:

'---------------------------------------------------------------------
' EncryptString
' Modificado por Harvey T.
'---------------------------------------------------------------------
'El parámetro UserKey es la clave.
'El parámetro Text es el texto a encriptar o desencriptar.
'El parámetro Action indica QUE hacer, ..es decir Encriptar o desencriptar. ( El valor ENCRYPT es para encriptar y el valor DECRYPT para desencriptar)
'url: http://www.recursosvisualbasic.com.ar/htm/trucos-codigofuente-visual-basic/269-encriptar-desencriptar.htm

'//For Action parameter in EncryptString
Const ENCRYPT = 1
Const DECRYPT = 2

Public Function EncryptString(UserKey As String, Text As String, Action As Single) As String
    Dim UserKeyX As String
    Dim Temp     As Integer
    Dim Times    As Integer
    Dim i        As Integer
    Dim j        As Integer
    Dim n        As Integer
    Dim rtn      As String

     

    '//Get UserKey characters

    n = Len(UserKey)

    ReDim UserKeyASCIIS(1 To n)

    For i = 1 To n
        UserKeyASCIIS(i) = Asc(Mid$(UserKey, i, 1))
    Next

         

    '//Get Text characters

    ReDim TextASCIIS(Len(Text)) As Integer

    For i = 1 To Len(Text)
        TextASCIIS(i) = Asc(Mid$(Text, i, 1))
    Next

     

    '//Encryption/Decryption

    If Action = ENCRYPT Then

       For i = 1 To Len(Text)
           j = IIf(j + 1 >= n, 1, j + 1)
           Temp = TextASCIIS(i) + UserKeyASCIIS(j)
           If Temp > 255 Then
              Temp = Temp - 255
           End If
           rtn = rtn + Chr$(Temp)
       Next

    ElseIf Action = DECRYPT Then

       For i = 1 To Len(Text)
           j = IIf(j + 1 >= n, 1, j + 1)
           Temp = TextASCIIS(i) - UserKeyASCIIS(j)
           If Temp < 0 Then
              Temp = Temp + 255
           End If
           rtn = rtn + Chr$(Temp)
       Next

    End If

     

    '//Return

    EncryptString = rtn

End Function

Luego en el modulo de mod_consultas se creo una función de validar Usuarios:

Nota: Visual Basic y MS Access tiene problemas para aceptar el campo password en la base de datos por lo cual debe cambiarlo a otro en mi caso lo llamare password_us debe hacer este cambio en la base de datos.

Function Validar_Usuario(usuario As String, password As String) As Boolean

    Dim RecorsetTemp  As New ADODB.Recordset

    Dim Sql As String

    Dim Clave As String



    Clave = EncryptString("4mkiujn4", password, 1)

   

    Sql = "Select * from tblUsuarios where usuario = '" & usuario & "' and password_us = '" & Clave & "'"

    RecorsetTemp.Open Sql, ConexionADO

   

    If RecorsetTemp.RecordCount > 0 Then

       Glo_NombreUsuario = RecorsetTemp("nombres_apellidos")

       Glo_IdUsuario = RecorsetTemp("IdUsuario")

       Glo_IdentifUsuario = RecorsetTemp("identificacion")

       Validar_Usuario = True

    Else

       Validar_Usuario = False

    End If

   

End Function



En el formulario de frmLogin en el evento clic del boton ingresar se coloco el siguiente código:





Private Sub cmdIngresar_Click()

    If Validar_Usuario(txtUsuario.Text, txtPassword.Text) = True Then

       frmPrincipal.Show

       Unload Me

    Else

       MsgBox "Usuario no válido", vbCritical, "Erro de Usuario"

    End If

End Sub

Se creo el formulario MDI frmPrincipal que sera la ventana principal de la aplicación.

Iconos para usar en nuestra aplicación:

411 Iconos para Visual Basic 6 (1411 descargas ) 88 Iconos Visual Basic 6 (1164 descargas ) 126 Iconos Visual Basic 6 (1166 descargas ) 400 Iconos para Visual Basic 6 (1276 descargas )

 

Siguiente Lección Parte 7 – Finalizando Login y Uso de Status Bar

Total Page Visits: 6644 - Today Page Visits: 7

Deja una respuesta