0
所以我现在挣扎着如何让我的程序在VB6中工作。命令按钮的功能是当TLoginR.text在数据库中具有相同的文本时,它将显示一个消息框,指出“用户名不可用...”。现在是这个问题,当我输入一个新文本并且不在数据库中时,提示仍然弹出。我慷慨地需要帮助谢谢。做数据库直到注册
代码:
Private Sub CRegR_Click()
Dim user as string
Dim pass as string
Dim prompt as string
RegR.Refresh
user = TLoginR.Text
pass = TPassR.Text
Do Until Regr.Recordset.EOF
If RegR.Recordset.Fields("Username").Value = user Then
prompt = MsgBox("Username not available, please try another one!", vbOKCancel)
If (prompt = 1) Then
TLoginR.Text = ""
TPassR.Text = ""
Register.show
Else
End If
Exit Sub
Else
RegR.Recordset.MoveNext
End If
Loop
RegR.Recordset.Fields("Username").value = user
RegR.Recordset.Fields("Password").value = pass
RegR.Recordset.Update
Register.Hide
Login.Show
End Sub
您确定'RegR.Recordset'只检索一条记录吗?可能是检索到多个记录,并且您输入的文本是其中一个记录中的某处。 –
是的,先生。我只想验证TLoginR.text中的文本是否在“用户名”字段下没有记录,如果存在,则会显示一条消息,提示“用户名不可用...”,如果不,那么它会重新添加到记录中。 –
你需要开始做一些基本的故障排除。在循环之前为用户添加一个debug.Print语句,并查看它是否是您的想法。或者至少将它添加到您的msgbox告诉用户他们尝试输入的内容。另外debug.print你的field.username。最后使用常量vbOK而不是1来检查提示响应时的可读性 – dbmitch