my vb.net code is supposed to connect to my database. It did this successfully until I added a query to check if the username and password existed. After adding this, the user is denied access whilst still using the same password. What could be the cause of this? Code:
MysqlConn = New MySqlConnection()
MysqlConn.ConnectionString = "server=;" _
& "user id=;" _
& "password=;" _
& "database="
Try
MysqlConn.Open()
Using cmd As New MySqlCommand
cmd.CommandText = "SELECT COUNT(*) From tableUser WHERE Username=" & TextBox1.Text & " AND Password=" & TextBox2.Text
cmd.CommandType = CommandType.Text
cmd.Connection = MysqlConn
result = cmd.ExecuteScalar
End Using
MysqlConn.Close()
If (result < 1) Then
MessageBox.Show("Please make sure you have typed valid credentials!")
ElseIf result = 1 Then
Dim form As New Form2
form.Show()
Me.Close()
End If
Catch myerror As MySqlException
MessageBox.Show("Connection to the database has been lost. Please try again later.")
Finally
MysqlConn.Dispose()
End Try
Here is some code , i just wrote it , hope it helps ,just change it to your needs.
Private Sub login()
conn = New MySqlConnection
con.ConnectionString =
"server=localhost;userid=root;password=1234;database=batabase;port=3307"
Dim READER As MySqlDataReader
If TextBox1.Text = "" Then
MessageBox.Show("Please enter usename ! ", "Enter username")
Exit Sub
End If
If TextBox2.Text = "" Then
MessageBox.Show("Please enter password", "Enter password")
Exit Sub
End If
Try
conn.Open()
Dim Query As String
Query = "select * from db.users where user='" & TextBox1.Text & "' and password='" & TextBox2.Text & "' "
COMMAND = New MySqlCommand(Query, conn)
READER = COMMAND.ExecuteReader
Dim count As Integer
count = 0
While READER.Read
count = count + 1
End While
If count = 1 Then
Form.Show()
Me.Hide()
ElseIf count > 1 Then
MessageBox.Show("The username is already in use!")
Else
MsgBox("Error , please try again ", MsgBoxStyle.Critical)
End If
conn.Close()
Catch ex As Exception
MessageBox.Show(ex.Message)
Finally
conn.Dispose()
End Try
End Sub
Change the database name user name to your needs and it will work !
just add the login() in your login button on your form !!! or enter this code on your button without the Private Sub login()
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.