SoloCodigo
CLR: .Net / Mono / Boo / Otros CLR => VB .NET => Mensaje iniciado por: elultimoguerrero en Viernes 18 de Septiembre de 2009, 04:27
-
Hola amigos, espero me puedan ayudar con la siguente duda que tengo, estoy haciendo una aplicación en la cual al ejecutar un sistema me pide el nombre de usuario y contraseña para poder acceder al sistema, ya tengo lo que son los registros de usuarios, lo que no se hacer es que cuando yo agregue otro usuario y este sea de igual nombre a otro usuario registrado me diga con un mensaje que ese nombre ya está ocupado, también algo que he observado es que cuando yo ingreso el nombre de usuario y la contraseña en el acceso de usuarios no respeta mayúsculas ó minúsculas con las que fueron registrados, acepta combinación de ambas y eso no debería de ser, utilizo visual basic 2005 edición express y mysql este es mi código:
Imports MySql.Data.MySqlClient
Imports System.Data
Public Class accesoausuarios
Dim con As New MySqlConnection()
Dim da As New MySqlDataAdapter()
Dim ds As New DataSet()
Private Sub bvalidar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bvalidar.Click
con = New MySqlConnection("server=xxx;database=xxx;uid=xxx;pwd=xxx;")
da = New MySqlDataAdapter("select Usuario, Contrasena from registrodeusuarios where Usuario = '" & tusuario.Text & "' and Contrasena = '" & tcontrasena.Text & "'", con)
da.Fill(ds, "registrodeusuarios")
If ds.Tables("registrodeusuarios").Rows.Count > 0 Then
Dim fvideohome As New videohome
fvideohome.Show()
Me.Hide()
Else
MsgBox("Verifique el nombre de usuario y la contraseña.", MsgBoxStyle.Information, "Operación cancelada.")
End If
End Sub
Private Sub bcancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bcancelar.Click
End
End Sub
Private Sub tusuario_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tusuario.KeyPress
'Al presionar la tecla enter nos posiciona en la siguiente caja de texto.
If Asc(e.KeyChar) = 13 Then
e.Handled = True
SendKeys.Send("{tab}")
End If
End Sub
End Class
Espero me puedan ayudar ya que lo hé intentado mucho y no encuentro mucha ayuda en la red con lo que es mysql y visual basic, se los agradeceré mucho.
-
hola,
nos encontrasmos nuevamente
mira con la palabra BINARY de lo q se (recien estoy empezando con mysql) se puede hacer un select con "case sensitive"
ej:
select * from `registrodeusuarios` where Usuario = BINARY 'juan'
no es igual que: (por la letra mayuscula "J"uan)
select * from `registrodeusuarios` where Usuario = BINARY 'Juan'
saludos
-
Hola compañeros del foro, mil disculpas ya que no me había podido conectar al foro por cuestiones de trabajo y no haber respondido a la ayuda que ustedes me han brindado, hace unos minutos, después de haber batallado y comparado códigos encontré la solución al problemita que tenía y aquí con mucho gusto la comparto con ustedes, el código si cambia un buen en cuanto a las órdenes dadas ya que se agregaron variables y demás, espero los comparen y los comprueben para que puedan entender su funcionamiento, seguimos colaborando con el foro, saludos.
Imports MySql.Data.MySqlClient
Imports System.Data
Public Class accesoausuarios
Dim con As New MySqlConnection()
Dim da As New MySqlDataAdapter()
Dim ds As New DataSet()
Dim dr As DataRow
Dim dt As DataTable
Private Sub bvalidar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bvalidar.Click
con = New MySqlConnection("server=xxx;database=xxx;uid=xxx;pwd=xxx;")
da = New MySqlDataAdapter("select Usuario, Contrasena from registrodeusuarios where Usuario = '" & tusuario.Text & "' and Contrasena = '" & tcontrasena.Text & "'", con)
da.Fill(ds, "registrodeusuarios")
Me.dt = Me.ds.Tables("registrodeusuarios")
For Each Me.dr In Me.dt.Rows
If tusuario.Text = Me.dr("Usuario") And tcontrasena.Text = Me.dr("Contrasena") Then
Dim fvideohome As New videohome
fvideohome.Show()
Me.Hide()
Else
MsgBox("Verifique el nombre de usuario y la contraseña.", MsgBoxStyle.Information, "Operación cancelada.")
End If
Next
End Sub
Private Sub bcancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bcancelar.Click
End
End Sub
Private Sub tusuario_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tusuario.KeyPress
If Asc(e.KeyChar) = 13 Then
e.Handled = True
SendKeys.Send("{tab}")
End If
End Sub
End Class