Private Sub Form_Activate()
Set mydb = Workspaces(0).OpenDatabase(App.Path & "\db1.mdb") '打开数据库
SQL = "select 用户名 from 用户"
Set myrs = mydb.OpenRecordset(SQL)
If myrs.EOF = False Then myrs.MoveLast
If myrs.BOF = False Then myrs.MoveFirst For i = 0 To myrs.RecordCount - 1
Combo1.AddItem (myrs.Fields(0))
myrs.MoveNext
Next i If Combo1.ListCount > 0 Then Combo1.ListIndex = 0
myrs.Close
mydb.Close
Combo1.SetFocus
End SubPrivate Sub Command1_Click() '确认操作员和密码
Dim MESSAGE As String
If Combo1.Text <> "" Then
Set mydb = Workspaces(0).OpenDatabase(App.Path & "\db1.mdb")
Set myrs = mydb.OpenRecordset("用户", dbOpenDynaset)
myrs.FindFirst "用户名 = " + Chr(34) + Combo1.Text + Chr(34) + "" ' 查找操作员
If myrs.NoMatch Then '没查到记录
MsgBox "无此操作员!", vbOKOnly + vbExclamation, "提示"
Else
If Form2.Text1.Text = myrs.Fields("密码") Then '确认密码
c = Form2.Combo1.Text
Form2.Caption = "用户名,密码正确请稍等......"
Unload Me
Form1.Show
Else
MsgBox "密码错误,请重新输入密码!", vbOKOnly + vbExclamation, "提示"
Text1.SetFocus
End If
End If
End If
End SubPrivate Sub Combo1_KeyDown(KeyCode As Integer, Shift As Integer) '回车换行
If KeyCode = vbKeyReturn Then
Text1.SetFocus
End If
End SubPrivate Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyReturn Then
Command1.Visible = True
Command1.SetFocus
End If
If KeyCode = vbKeyDown Then
Command1.Visible = True
Command1.SetFocus
End If
If KeyCode = vbKeyUp Then
Combo1.SetFocus
End If
End SubPrivate Sub Command2_Click()
Unload Me
End SubPrivate Sub 修改管理员密码_Click()
Form3.Show
End Sub
我写的代码为什么,数据库密码设置为空,在用户界面上密码框中设置为空时,单击登录按钮却会弹出密码错误的消息框呢,怎么样实现密码为空的登录呢?
Set mydb = Workspaces(0).OpenDatabase(App.Path & "\db1.mdb") '打开数据库
SQL = "select 用户名 from 用户"
Set myrs = mydb.OpenRecordset(SQL)
If myrs.EOF = False Then myrs.MoveLast
If myrs.BOF = False Then myrs.MoveFirst For i = 0 To myrs.RecordCount - 1
Combo1.AddItem (myrs.Fields(0))
myrs.MoveNext
Next i If Combo1.ListCount > 0 Then Combo1.ListIndex = 0
myrs.Close
mydb.Close
Combo1.SetFocus
End SubPrivate Sub Command1_Click() '确认操作员和密码
Dim MESSAGE As String
If Combo1.Text <> "" Then
Set mydb = Workspaces(0).OpenDatabase(App.Path & "\db1.mdb")
Set myrs = mydb.OpenRecordset("用户", dbOpenDynaset)
myrs.FindFirst "用户名 = " + Chr(34) + Combo1.Text + Chr(34) + "" ' 查找操作员
If myrs.NoMatch Then '没查到记录
MsgBox "无此操作员!", vbOKOnly + vbExclamation, "提示"
Else
If Form2.Text1.Text = myrs.Fields("密码") Then '确认密码
c = Form2.Combo1.Text
Form2.Caption = "用户名,密码正确请稍等......"
Unload Me
Form1.Show
Else
MsgBox "密码错误,请重新输入密码!", vbOKOnly + vbExclamation, "提示"
Text1.SetFocus
End If
End If
End If
End SubPrivate Sub Combo1_KeyDown(KeyCode As Integer, Shift As Integer) '回车换行
If KeyCode = vbKeyReturn Then
Text1.SetFocus
End If
End SubPrivate Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyReturn Then
Command1.Visible = True
Command1.SetFocus
End If
If KeyCode = vbKeyDown Then
Command1.Visible = True
Command1.SetFocus
End If
If KeyCode = vbKeyUp Then
Combo1.SetFocus
End If
End SubPrivate Sub Command2_Click()
Unload Me
End SubPrivate Sub 修改管理员密码_Click()
Form3.Show
End Sub
我写的代码为什么,数据库密码设置为空,在用户界面上密码框中设置为空时,单击登录按钮却会弹出密码错误的消息框呢,怎么样实现密码为空的登录呢?
应该怎么写才能解决这个问题呢
===========================================================
If Form2.Text1.Text = myrs.Fields("密码").value Then '确认密还有看看数据库是否真的为空,或许有小的失误呢
呵呵
MsgBox "无此操作员!", vbOKOnly + vbExclamation, "提示"
Else
If Form2.Text1.Text = myrs.Fields("密码") OR MYRS.FIELDS("密码")=VBNULLSTRING Then '确认密码 ''更改的地方
c = Form2.Combo1.Text
Form2.Caption = "用户名,密码正确请稍等......"
Unload Me
Form1.Show
Else
MsgBox "密码错误,请重新输入密码!", vbOKOnly + vbExclamation, "提示"
Text1.SetFocus
End If
End If
End If
End Sub