jueves, 14 de marzo de 2013

Hacer un login en visual Basic .Net


Lo primero es aclarar que es válido pata cualquiera de las versiones que estén utilizando.
Para este ejemplo estamos partiendo de una tabla que yo he llamado acceso, la cual contiene los campos usuario y  clave y los textbox del formulario los he llamado  txtUsuario.Text y txtClave.Text

Para el caso he trabajado con una base de datos SQL Server, 
sin van a a utilizar access, recuerden sustituir el (SqlDataAdapter) por oledbdataAdapter.






'boton aceptar
Private Sub cmdAceptar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmdAceptar.Click
 A partir de esta parte lo pueden copiar y pegar a su proyecto y adaptar a los nombres que tengan puestos     
'////////////////////////////////////////////////
 Try
 'Preguntamos si la conexion esta abierta, si lo esta la abrimo         
  If Not con.State = ConnectionState.Open Then
'abrimos la conexion                
con.Open()
            End If
'hacemos una nueva consulta donde comparamos los campo de la tabla
  Dim da As New SqlDataAdapter("select * from acceso where usuario='" & txtUsuario.Text & "' and clave='" & txtClave.Text & "'", con)
'creamos una variable del tipo tabla de datos
 Dim dt As New DataTable
' llenamos la tabla con los datos de la consulta
            da.Fill(dt)
' preguntamos si la cantidad de filas de la tabla es diferente de 0
' si es asi es porque ma misma tiene datos

            If dt.Rows.Count <> 0 Then
                ' llAMAMO NUESTRO MENU PRINCIPAL
                frmMenuPrincipal.Show()
                'CERRAMOS EL FORMULARIO
Me.close
            Else

' si esta parte se ejecuta es porque el usuario no ha sido registrado o se escribieron datos incorrectos, y enviamos un mensaje informando
MessageBox.Show("Usuario invalido o su clave es incorrecta", "Error de usuario o clave", MessageBoxButtons.OK, MessageBoxIcon.Error)
'limpiarmos los controles para que se escriba de nuevo
                txtClave.Clear()
                txtUsuario.Clear()
'enviamos el foco a unos de los controles nuemante
                txtUsuario.Focus()
            End If
'Cerramos al conexion para que no quede abierta
            con.Close()
' si para un error se ejecuta esta aprte que dice que paso y evita que el programa se explote      
' Catch ex As Exception
            MsgBox(ex.Message, MsgBoxStyle.Critical, Err.Source)
        End Try

1 comentario:

  1. Gracias por el documento, es muy esplicito al esplicar paso a paso de como hacer un login en visua.

    ResponderEliminar