Ver Mensaje Individual
  #6 (permalink)  
Antiguo 04-05-2008, 07:15:25
ROBOT ROBOT is offline
Un Nuevo Amigo
 
Registrado: abr 2008
Posts: 2
ROBOT Aun no valorado
Predeterminado Re: Como hacer Login En VB2005

Cita:
Empezado por coyotevdm Ver Mensaje
Esto es lo que utilizo yo para hacer un login desde una base de datos. utilizo el formulario login q este seria su codigo y una clase clsusuario q esta mas adelante.

Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles butOK.Click
Static n_intentos As Single = 1
gclsUsuario.Clave = txtPass.Text
gclsUsuario.Usuario = txtUser.Text
gclsUsuario.Conexion = gclsConexion.Conexion
If n_intentos < 3 Then
If gclsUsuario.Usuario_OK = True Then
Me.Close()
Else
MessageBox.Show("Error!!!!, Nombre de usuario, contraseña incorrecto.", "Error!!!", MessageBoxButtons.OK, MessageBoxIcon.Error)
txtPass.Text = ""
txtPass.Focus()
n_intentos += 1
End If
Else
MessageBox.Show("Error, Ha superado el nº máximo de intentos para acceder, " _
& "su cuenta ha sido bloqueada!!!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
gclsUsuario.Bloquear_Cuenta_Usuario(txtUser.Text)
Application.Exit()
End If
End Sub
Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles butCancel.Click
Application.Exit()
End Sub
Private Sub frmLogin_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
AddHandler gclsUsuario.cuenta_bloqueada, AddressOf cuenta_bloqueada
End Sub
Public Sub cuenta_bloqueada()
MsgBox("Su cuenta esta bloqueada", MsgBoxStyle.Critical, "Cuenta bloqueada")
Application.Exit()
End Sub
End Class


-----------Esta es la clase usuario--------------

Private sClave As String
Public Property Clave() As String
Get
Return sClave
End Get
Set(ByVal value As String)
sClave = value
End Set
End Property
Public Function Usuario_OK() As Boolean
Dim sConstructor As New System.Text.StringBuilder("")
sConstructor.Append("SELECT * FROM USUARIO WHERE usuario='")
sConstructor.Append(sUsuario)
sConstructor.Append("' AND password='")
sConstructor.Append(sClave)
sConstructor.Append("'")

Dim UsuarioAdapter As New MySqlDataAdapter(sConstructor.ToString, cnConexion)
Dim TablaUsuarios As New DataTable
UsuarioAdapter.Fill(TablaUsuarios)
If TablaUsuarios.Rows.Count > 0 Then
If CDbl(TablaUsuarios.Rows(0).Item("bloqueado").ToStr ing) = 0 Then
sRol = CInt(TablaUsuarios.Rows(0).Item("cod_categoria").T oString)
Return True
Else
RaiseEvent cuenta_bloqueada()
End If
Else
Return False
End If
End Function
Public Sub Bloquear_Cuenta_Usuario(ByVal usuario As String)
Dim sconstructor As New System.Text.StringBuilder("")
sconstructor.Append("UPDATE usuario SET usuario.bloqueado = 1 WHERE usuario.usuario='")
sconstructor.Append(sUsuario)
sconstructor.Append("';")
Dim comando As New MySqlCommand
comando.Connection = cnConexion
comando.CommandType = CommandType.Text
comando.CommandText = sconstructor.ToString
Try
comando.ExecuteNonQuery()
Catch ex As Exception
MsgBox(Err.Description)
End Try
End Sub


Bueno, esta claro que tendras que hacer muchisimas modificaciones y todo eso. pero al menos espero que te sirva de idea.
Wow!! te sacaste un 10 amigo!!,

GRACIAS por tu tiempo y por responder, y ps si tengo problemillas te aviso

sale!!
Responder Con Cita