前言
登录窗体是敲机房开始的第一个窗体,与学生系统的思路相似,但需要多考虑的就是用户权限问题,根据用户权限的不同选择不同的主界面,并且在登录成功之后需要记载入库。
期间还涉及到字符的判断、登录次数的记录等一些细节问题。
需要注意的就是,当用户输入的密码不正确或用户名不正确时,不能直接告诉他用户名不正确、密码不正确,这样很容易泄露用户信息。举个例子,比如我是一个坏人,事先不知道有那个用户可以登录,当我随便输入了用户名和密码,赶上点好,用户名输入正确了,但是我并不知道呀!结果弹出框却只显示密码不正确,那么用户名的信息是不是就泄露了呢?我是不是只更改密码就OK了呢?万一密码也不小心输入正确了,那么我是不是就可以进入系统为所欲为了呢?所以,安全问题是无处不在的,其实弹出框弹出的内容可以直接显示“用户名或密码不正确!”,这样坏人不就什么都不知道了嘛!(感谢师傅提醒!)
一、逻辑思路
二、部分代码展示
'记载输入密码次数
micount = micount + 1
If micount = 2 Then
MsgBox "你还有一次输入机会!", 0 + 48, "提示"
End If
If micount = 3 Then
MsgBox "已达到登录次数上限,即将退出!", 0 + 48, "警告"
Unload Me
End If
Exit Sub
'对登录用户进行权限设定
If Trim(mrc.Fields(2)) = "一般用户" Then
FrmMain.操作员.Enabled = False
FrmMain.操作员.Visible = False
FrmMain.管理员.Enabled = False
FrmMain.管理员.Visible = False
End If
If Trim(mrc.Fields(2)) = "操作员" Then
FrmMain.管理员.Enabled = False
FrmMain.管理员.Visible = False
End If
If Trim(mrc.Fields(2)) = "管理员" Then
FrmMain.操作员.Enabled = False
FrmMain.操作员.Visible = False
End If