This is my first time to do visual basic program
Please help me about this problem... When I run the program with maximum attempt of 3 with correct username and password, Illegal user will pop up,,,i really dont know what to do..illegal user must be pop up when i already attempt " try again " then another "3attempt" then the username or password are wrong....pls help me
Imports System.Data.OleDb
Public Class SignIn
Dim ctr As Integer = 0
Dim crr As Integer = 0
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
ctr += 1
Dim t As New Timer()
t.Interval = 1000
t.Enabled = True 'for timer
Dim cmd As OleDbCommand
Dim cmdd As OleDbCommand
Dim cmddd As OleDbCommand
Dim con As New OleDbConnection("Provider=Microsoft.JET.OLEDB.4.0;data source=C:\Users\Lle\Desktop\DB1.mdb")
Dim sql = "SELECT Username,Password FROM Login WHERE Username = '" & TextBox1.Text & "' AND password = '" & TextBox2.Text & "'"
con.Open()
cmd = New OleDbCommand(sql, con)
Dim sdr As OleDbDataReader = cmd.ExecuteReader()
Dim sqll = "SELECT Username,Password FROM Login WHERE Username = '" & TextBox1.Text & "'"
cmdd = New OleDbCommand(sqll, con)
Dim sdrr As OleDbDataReader = cmdd.ExecuteReader()
Dim sqlll = "SELECT Username,Password FROM Login WHERE password = '" & TextBox2.Text & "'"
cmddd = New OleDbCommand(sqlll, con)
Dim sdrrr As OleDbDataReader = cmddd.ExecuteReader()
' If the record can be queried, Pass verification and open another form.
If (sdr.Read() = True) Then
Timer2.Start()
ProgressBar1.Show()
ElseIf (sdrr.Read() = True) Then
MessageBox.Show("Invalid password")
TextBox1.Text = ""
TextBox2.Text = ""
TextBox1.Focus()
ElseIf (sdrrr.Read() = True) Then
MessageBox.Show("Invalid username")
TextBox1.Text = ""
TextBox2.Text = ""
TextBox1.Focus()
Else
MessageBox.Show("Invalid username and password!")
TextBox1.Text = ""
TextBox2.Text = ""
TextBox1.Focus()
End If
If ctr = 3 Then
crr += 1
If (crr < 2) Then
MessageBox.Show("Unidentified user", "Error Acquired", MessageBoxButtons.OK, MessageBoxIcon.Warning)
If (MessageBox.Show("Try again?", "Error Acquired", MessageBoxButtons.OKCancel, MessageBoxIcon.Information) = Windows.Forms.DialogResult.Cancel) Then
Me.Close()
Else
ctr = 0
Label1.ForeColor = Color.Red
Label1.BackColor = Color.DarkGray
Label2.BackColor = Color.DarkGray
Label2.ForeColor = Color.Red
TextBox1.ForeColor = Color.Red
TextBox2.ForeColor = Color.Red
End If
Else
If crr = 2 Then
MessageBox.Show("Illegal User!!!" + vbCr + "You are not allow to attempt again", "Error Acquired", MessageBoxButtons.OK, MessageBoxIcon.Warning)
Me.Close()
End If
End If
End If
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
TextBox1.Text = ""
TextBox2.Text = ""
TextBox1.Focus()
'button clear
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Me.Close()
'button exit
End Sub
Private Sub TextBox1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
If e.KeyData = Keys.Return Then
TextBox2.Focus()
'when you are finish typing in textbox1 and press enter it will automatically go to textbox2
End If
End Sub
Private Sub TextBox2_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox2.KeyDown
If e.KeyData = Keys.Return Then
Button1.Focus()
'when you are finish typing in textbox2 and press enter it will automatically go to button1
End If
End Sub
Private Sub ValidateInputs(ByVal Sender As Object, ByVal e As EventArgs)
Button1.Enabled = Not (TextBox1.Text = String.Empty OrElse TextBox2.Text = String.Empty)
'this is for button not to enable when textbox is empty
End Sub
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
ProgressBar1.Hide()
AddHandler TextBox1.TextChanged, AddressOf ValidateInputs
AddHandler TextBox2.TextChanged, AddressOf ValidateInputs
'this is for button not to enable when textbox is empty
End Sub
Private Sub Timer1_Tick_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Label3.Text = (DateTime.Now.ToLongTimeString() + "," + DateTime.Now.ToLongDateString())
'for timer
End Sub
Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
ProgressBar1.Increment(30)
If ProgressBar1.Value = ProgressBar1.Maximum Then
Timer2.Stop()
MessageBox.Show("Welcome to Billing System", "", MessageBoxButtons.OK, MessageBoxIcon.Information)
Menudata.Show()
Me.Hide()
End If
End Sub
End Class