1
進出口使用此代碼:區分大小寫的用戶名和密碼
Dim con As OleDbConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source= UserPass.mdb;")
con.Open()
Dim str As String
str = "SELECT * FROM UserPass WHERE Username='" & txtUsername.Text & "' AND Password='" & txtPassword.Text & "'"
Dim cmd As OleDbCommand = New OleDbCommand(str, con)
cmd.Parameters.AddWithValue("user", txtUsername.Text)
cmd.Parameters.AddWithValue("pass", txtPassword.Text)
Dim sdr As OleDbDataReader = cmd.ExecuteReader()
' It will be case sensitive if you compare usernames here.
If sdr.HasRows Then
If sdr.Read Then
If txtPassword.Text <> sdr("Password").ToString And txtUsername.Text <> sdr("Username").ToString Then
MessageBox.Show(" Incorrect Username/Password. Login Denied ", " Error! ", MessageBoxButtons.OK, MessageBoxIcon.Error)
Else
MessageBox.Show(" You are now Logged In! ", " Welcome! ", MessageBoxButtons.OK, MessageBoxIcon.Asterisk)
frmOne.Show()
Me.Hide()
End If
End If
End If
sdr.Close()
con.Close()
這是它應該檢查信件的情況下,線,但它似乎並沒有工作:
If txtPassword.Text <> sdr("Password").ToString And txtUsername.Text <> sdr("Username").ToString Then
以何種方式它不工作? –
當我在用戶名文本框中輸入「admin」和在密碼文本框中輸入「admin1」時,數據庫中的用戶名是「Admin」,密碼是「Admin1」 ,但它仍然允許我登錄。 –
備註:錯誤地存儲您的密碼。 http://www.codinghorror.com/blog/2007/09/youre-probably-storing-passwords-incorrectly.html – jeroenh