سلام
من از Access زیاد سر در نمیارم ولی بنظر من امنیت کافی نداره
و اینکه نام کاربری یا UserID کلمه انگلیسی باید باشه نه عدد مثلا ROSTAM
Private Sub Command6_Click()
If Nz(Me.txtUsername, "") = "" Then
MsgBox "äÇã ˜ÇÑÈÑí ÑÇ æÇÑÏ ˜äíÏ", vbCritical
Me.txtUsername.SetFocus
Exit Sub
End If
If Nz(Me.txtPassword, "") = "" Then
MsgBox "ÑãÒ æÑæÏ ÑÇ æÇÑÏ ˜äíÏ", vbCritical
Me.txtPassword.SetFocus
Exit Sub
End If
If Nz(DLookup("UserID", "Users_tbl", "UserID='" & Me.txtUsername & "'"), "") = "" Then
MsgBox "äÇã ˜ÇÑÈÑí ÇÔÊÈÇå ÇÓÊ", vbCritical
Me.txtUsername.SetFocus
Exit Sub
End If
Dim dbs As Database
Dim rs As Recordset
Dim strSQL As String
Set dbs = CurrentDb
strSQL = "SELECT * FROM Users_tbl WHERE (((Users_tbl.UserID)='" + Me.txtUsername + "'));"
Set rs = dbs.OpenRecordset(strSQL)
If rs.RecordCount = 0 Then Exit Sub
If Not (rs.EOF And rs.BOF) Then
rs.MoveFirst
'get results using rs.Fields()
Else
End If
If Not Nz(DLookup("Password", "Users_tbl", "Password='" & Me.txtPassword & "'"), "") = rs.Fields(4) Then
MsgBox "ÑãÒ æÑæÏ ÇÔÊÈÇå ÇÓÊ", vbCritical
Me.txtPassword = Null
Me.txtPassword.SetFocus
Exit Sub
End If
DoCmd.Close acForm, "Login_frm"
DoCmd.OpenForm "Main_frm"
End Sub