Ver Mensaje Individual
  #2 (permalink)  
Antiguo 17/03/2009, 11:22
Avellaneda
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 17 años, 1 mes
Puntos: 37
Respuesta: Autentificar Usuario .NET con SQL

Prueba así:

Código vb.net:
Ver original
  1. Imports System.Data.SqlClient
  2.  
  3. Public Class LoginForm1
  4.     Dim cont As Int32 = 0
  5.     ' conexión a una BD SQLExpress
  6.     Dim con As New SqlConnection("Server=.\SQLEXPRESS;Integrated Security=True;Database=BaseSQL")
  7.  
  8.     Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click
  9.         If VerificarUsuario(UsernameTextBox.Text, PasswordTextBox.Text) Then
  10.             ' correcto, salimos a True
  11.             EsOk = True
  12.             Me.Close()
  13.         Else
  14.             ' le damos 4 intentos y si no, salimos a False
  15.             MsgBox("Usuario o contraseña incorrectos" & vbNewLine & "Quedan " & 3 - cont & " intentos")
  16.             cont += 1
  17.         End If
  18.         If cont = 4 Then Me.Close()
  19.     End Sub
  20.  
  21.     Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel.Click
  22.         Me.Close()
  23.     End Sub
  24.  
  25.     Private Function VerificarUsuario(ByVal ElUser As String, ByVal ElPass As String) As Boolean
  26.         Dim dr As SqlDataReader
  27.         Dim strSQL As String = "SELECT * FROM Usuarios Where Nombre = '" & ElUser & "' And Pass = '" & ElPass & "'"
  28.         con.Open()
  29.         Dim cmd As New SqlCommand(strSQL, con)
  30.         dr = cmd.ExecuteReader
  31.         dr.Read()
  32.         If dr.HasRows = True Then Return True
  33.         con.Close()
  34.     End Function
  35. End Class

En el Load del form de inicio:

Código vb.net:
Ver original
  1. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  2.         Me.Show() ' si quieres mostrar el Login dentro del Form de inicio
  3.         LoginForm1.ShowDialog()
  4.         If EsOk = False Then End
  5.  
  6. ' ....instrucciones de inicio
  7.  
  8. End Sub