先谢谢各位大侠啦~~~我们老师让交的作业,我怎么都弄不对,求您快帮我看看吧跪谢
希望您帮我指出错误,还能告诉我解决方法。谢谢啦~~~Private Sub cmdOk_Click()
Static intLogTimes As Integer
intLogTimes = intLogTimes + 1
If intLogTimes > MaxLogTimes Then
MsgBox "你已经超过允许的登录验证次数!" & vbCr _
& "应用程序将结束!", vbCritical, "登录验证"
End
Else
Select Case Check_PassWord()
Case 0
MsgBox txtLog(0) & "不是系统用户," _
& "请检查用户名输入是否正确!", _
vbCritical, "登录验证"
txtLog(0).SetFocus
txtLog(0).SelStart = 0
txtLog(0).SelLength = Len(txtLog(0))
Case 1
MsgBox "口令错误,请重新输入!", vbCritical, "登录验证"
txtLog(1) = ""
txtLog(1).SetFocus
Case 2
Unload Me
MsgBox "登录成功,将启动系统管理程序!", _
vbInformation, "登录验证"
frmSysMain.Show
Case Else
MsgBox "登录验证未正常完成!请重新运行登录程序," _
& vbCrLf & "如果仍不能登录,请报告系统管理员!", _
vbCritical, "登录验证"
End Select
End If
End Sub
Private Function Check_PassWord() As Byte
On Error GoTo gpError
Dim objCn As New Connection, objRs As New Recordset
Dim strCn As String, strSQL As String
strCn = "Provider=MSDASQL.1;Persist Security Info = False;" & _
"Data Source=物管数据 DSN"
objCn.ConnectionString = strCn
objCn.ConnectionTimeout = 30
objCn.Open
strSQL = "SELECT*FROM 系统用户 WHERE 用户名=""& txtLog(0)&"
Set objRs.ActiveConnection = objCn
objRs.Open (strSQL)
If objRs.EOF Then
Check_PassWord = 0
Else
If txtLog(1) <> Trim(objRs.Fields("口令")) Then
Check_PassWord = 1
Else
Check_PassWord = 2
CurrentUserName = objRs.Fields("用户名").Value
CurrentUserPassWord = objRs.Fields("口令").Value
CurrentUserStatus = objRs.Fields("身份").Value
End If
End If
objCn.Close
Set objRs = Nothing
Set objCn = Nothing
Exit Function
gpError
Check_PassWord = 255
End FunctionPrivate Sub cmdCancel_Click()
If MsgBox("你选择了退出系统登录,退出将不能启动管理系统!" & vbCrLf _
& "是否真的退出?", vbYesNo, "登录验证") = vbYes Then
Unload Me
End If
End Sub
Private Sub Form_Load()
Const MaxLogTimes As Integer = 3
End Sub
希望您帮我指出错误,还能告诉我解决方法。谢谢啦~~~Private Sub cmdOk_Click()
Static intLogTimes As Integer
intLogTimes = intLogTimes + 1
If intLogTimes > MaxLogTimes Then
MsgBox "你已经超过允许的登录验证次数!" & vbCr _
& "应用程序将结束!", vbCritical, "登录验证"
End
Else
Select Case Check_PassWord()
Case 0
MsgBox txtLog(0) & "不是系统用户," _
& "请检查用户名输入是否正确!", _
vbCritical, "登录验证"
txtLog(0).SetFocus
txtLog(0).SelStart = 0
txtLog(0).SelLength = Len(txtLog(0))
Case 1
MsgBox "口令错误,请重新输入!", vbCritical, "登录验证"
txtLog(1) = ""
txtLog(1).SetFocus
Case 2
Unload Me
MsgBox "登录成功,将启动系统管理程序!", _
vbInformation, "登录验证"
frmSysMain.Show
Case Else
MsgBox "登录验证未正常完成!请重新运行登录程序," _
& vbCrLf & "如果仍不能登录,请报告系统管理员!", _
vbCritical, "登录验证"
End Select
End If
End Sub
Private Function Check_PassWord() As Byte
On Error GoTo gpError
Dim objCn As New Connection, objRs As New Recordset
Dim strCn As String, strSQL As String
strCn = "Provider=MSDASQL.1;Persist Security Info = False;" & _
"Data Source=物管数据 DSN"
objCn.ConnectionString = strCn
objCn.ConnectionTimeout = 30
objCn.Open
strSQL = "SELECT*FROM 系统用户 WHERE 用户名=""& txtLog(0)&"
Set objRs.ActiveConnection = objCn
objRs.Open (strSQL)
If objRs.EOF Then
Check_PassWord = 0
Else
If txtLog(1) <> Trim(objRs.Fields("口令")) Then
Check_PassWord = 1
Else
Check_PassWord = 2
CurrentUserName = objRs.Fields("用户名").Value
CurrentUserPassWord = objRs.Fields("口令").Value
CurrentUserStatus = objRs.Fields("身份").Value
End If
End If
objCn.Close
Set objRs = Nothing
Set objCn = Nothing
Exit Function
gpError
Check_PassWord = 255
End FunctionPrivate Sub cmdCancel_Click()
If MsgBox("你选择了退出系统登录,退出将不能启动管理系统!" & vbCrLf _
& "是否真的退出?", vbYesNo, "登录验证") = vbYes Then
Unload Me
End If
End Sub
Private Sub Form_Load()
Const MaxLogTimes As Integer = 3
End Sub
解决方案 »
- 无法修改datagrid表格中的内容,紧急求助!!
- 用VB如何实现这个数据结构的问题
- 看看这个连接到 sql2000 的 事务 为什么没有 改变数据库里 的内容??????
- DAO打开dbf文件出错,请教下!
- 救命啊,帮帮我
- 怎样将COMBOBOX控件中得值分开获取?
- 请各位前辈帮帮忙(分数不至这么多),怎么样用SQL语句将SQLServer数据库的一个表中的记录导到Access表中
- 我的這個 Inet1 為什麼連不上,急死我也!!! HELP ME!
- 我的程序为什么运行不了?
- 如何对一个picturebox里的图形进行区域选择,并将选择部分的图形提取出来
- 寻求专业一点的方法 向exe传递参数
- 如何实现用汉语拼音检索信息?
2,字符型变量的引用方法:用户名='"& 变量名 &"'
strSQL = "SELECT * FROM 系统用户 WHERE 用户名='"& txtLog(0)&"'"