武汉大学学生工作部:VB怎么验证用户名和密码?代码

来源:百度文库 编辑:中科新闻网 时间:2024/04/29 18:05:30
Public con As New ADODB.Connection '连接数据库
Public rs As New ADODB.Recordset '记录集

比如我在文本框text1里输入用户名,text2输入密码.正确则可以登陆,否则不能。

数据库denglus如下:
字段: users password ......
liu **** ......
jiky **** ......
zhaoye **** ......
.... .... .....

参考代码如下:
'判断用户名与密码是否是空
If Trim(Text(0).Text) = "" Then Message.Caption = "请输入用户名,初始用户名:Admin,密码:123456": Text(0).Text = "": Exit Sub
If Trim(Text(1).Text) = "" Then Message.Caption = "请输入密码,初始用户名:Admin,密码:123456": Text(1).Text = "": Exit Sub

'判断用户名是否存在
管理用户.Open "Select * FROM 用户管理 where 用户名='" & Trim(Text(0).Text) & "'", SysDatabase, adOpenKeyset, adLockBatchOptimistic
If 管理用户.RecordCount < 1 Then Message.Caption = "用户名或密码错误,初始用户名:Admin,密码:123456": Text(0).Text = "": Text(1).Text = "": Call Close用户管理: Exit Sub

If StrComp(MD5("Password" & Text(1).Text), 管理用户("密码")) = 0 Then
当前用户 = 管理用户("用户名")
Call Close用户管理
Message.Caption = "正在加载程序,请稍等..."
LoginTimer.Enabled = True
Else
Message.Caption = "用户名或密码错误,初始用户名:Admin,密码:123456"
Text(0).Text = ""
Text(1).Text = ""
Call Close用户管理
End If

'检查正确的密码
Dim RsLogin As New ADODB.Recordset
Me.MousePointer = 11
If Len(txtUserID.Text) = 0Then
MsgBox "请输入正确用户名"
Me.MousePointer = 0 txtUserID.SetFocus
Exit Sub
End If
If glbOpenConn = True Then
' If RsLogin.State = adStateOpen Then RsLogin.Close
' RsLogin.Open "Select * From tablename Where Op_Id = " & Val(txtUserID.Text) & " And Op_Pwd = " & Val(txtPassword.Text), glbConn, adOpenForwardOnly, adLockReadOnly, adCmdText

If (Len(OperatorHash.Item(txtUserID.Text))) > 0 Then ''OpPasswordHash.Item(txtUserID.Text) = txtPassword.Text And
' If (OpPasswordHash.Item(txtUserID.Text) = txtPassword.Text And Len(OperatorHash.Item(txtUserID.Text))) > 0 Then
'将代码放在这里传递
'成功到 calling 函数
'设置全局变量时最容易的
LoginedUid = Val(txtUserID)
LoginedUserName = OperatorHash.Item(txtUserID.Text)
LoginedType = OpTypeHash.Item(txtUserID.Text)
' LoginedType=rslogin.Fields ("Op_Type").Value
UnloadFlag = False '防止程序退出
LoginSucceeded = True
writeLog "工号:" & LoginedUid & vbTab & "姓名:" & LoginedUserName & vbTab & "职务类别:" & LoginedType & vbTab & "登陆成功"
Me.Hide
' Unload Me
Else
If LogFalseCount = MaxLogFalseCount Then
MsgBox LoadResString(1011), vbInformation, LoadResString(1000)
Me.MousePointer = 0
Unload Me
Exit Sub
End If
MsgBox LoadResString(1010), vbInformation, LoadResString(1000)
LogFalseCount = LogFalseCount + 1
txtPassword.SetFocus
SendKeys "{Home}+{End}"
End If
glbCloseConn
Else
MsgBox LoadResString(9101), vbExclamation, LoadResString(9000)
Unload Me
End If
Me.MousePointer = 0
End Sub

有需要更多帮助请回