Visual Basic.NET - ayuda con login en visual basic y my sql server

 
Vista:

ayuda con login en visual basic y my sql server

Publicado por Alvar0 (19 intervenciones) el 16/04/2013 21:10:07
Estoy relizando un proyecto en visual basic 2010 y necesito hacer un login con su respectivo usuario y contraseña (estos estan alojados en una base de datos) la conexion a la base de datos se realiza sin problemas, hasta aqui todo bien, el problema es que intento ingresar y solo me permite ingresar con el primer usuario de la lista. aqui esta mi codigo

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

sql.Open("select * from usuario", con, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockBatchOptimistic)

If mtxUsuario.Text = "" Or txtContrasena.Text = "" Then
MsgBox("Ingrese Todos los Datos")
mtxUsuario.Focus()
mtxUsuario.SelectAll()

ElseIf mtxUsuario.Text = sql.Fields("rutusuario").Value And txtContrasena.Text = sql.Fields("contrasena").Value Then
MsgBox("Bienvenido al sistema ")
frmMenu.Show()

ElseIf MsgBox("Nombre de usuario y/o contraseña incorrectos", MsgBoxStyle.Information) Then
mtxUsuario.Focus()
mtxUsuario.SelectAll()

sql.MoveNext()

End If
sql.Close()
End Sub


ojala puedan ayudarme
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

ayuda con login en visual basic y my sql server

Publicado por Alvar0 (19 intervenciones) el 17/04/2013 17:49:29
He ordenado un poco el codigo y ha quedado asi


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
 
        If mtxUsuario.Text = "" Or txtContrasena.Text = "" Then
            MsgBox("Ingrese Todos los Datos")
            mtxUsuario.Focus()
            mtxUsuario.SelectAll()
 
        Else
 
            sql.Open("select * from usuario where rutusuario= '" & mtxUsuario.Text & "' and contrasena= '" & txtContrasena.Text & "'", con, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockBatchOptimistic)
            If mtxUsuario.Text = sql.Fields("rutusuario").Value And txtContrasena.Text = sql.Fields("contrasena").Value Then
                MsgBox("Bienvenido al sistema ")
                frmMenu.Show()
 
 
            Else
                If sql.EOF And sql.BOF Then
                    MsgBox("Nombre de usuario y/o contraseña incorrectos", MsgBoxStyle.Information)
                    mtxUsuario.Focus()
                    mtxUsuario.SelectAll()
 
                    sql.MoveNext()
 
                End If
            End If
            sql.Close()
        End If
 
    End Sub



ahora al ingresar con un usuario y contraseña valida lo hace perfectamente, pero el problema es un mensaje que dice "El valor de BOF o EOF es True, o el actual registro se eliminó; la operación solicitada requiere un registro actual." este error aparece en la siguiente linea If mtxUsuario.Text = sql.Fields("rutusuario").Value And txtContrasena.Text = sql.Fields("contrasena").Value Then

alguna sugerencia para mejorar el codigo y soucionar este error, saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar