| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 540 人关注过本帖
标题:[求助]一个简单的系统登录连接问题
只看楼主 加入收藏
lzq_wise1
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2007-1-24
结帖率:50%
收藏
 问题点数:0 回复次数:5 
[求助]一个简单的系统登录连接问题

功能是:在数据库中建立一个数据表用保存系统用户登录信息,在设计登录对话框时通过该数据表完成验证.不知什么原因输入正确的用户名和口令也不能登录,望高手指下,在下不胜感激
代码如下:
Const MaxLogTimes As Integer = 3
Private Sub Command1_Click()
Dim intResult As Integer
intResult = MsgBox("你选择了退出系统!" & vbCrlf_ & "是否真的退出", vbYesNo, "登录系统")
If intResult = vbYes Then End
End Sub
Private Function check_PassWord(ByVal UserName As String, ByVal Password As String) As Byte
On Error GoTo gpError
Dim objCn As New Connection, objRs As New Recordset, strCn As String
Dim strSQl As String
'建立数据库连接
objCn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & App.Path & "D:\vb\01.mdb"
objCn.Open
strSQl = "SELECT 口令 FROM 系统用户 WHERE 用户名=""& UserName &"""
Set objRs.ActiveConnection = objCn
objRs.Open (strSQl)
If objRs.EOF Then
check_PassWord = 0
Else
If Password <> Trim(objRs.Fields("口令").Value) Then
check_PassWord = 1
Else
check_PassWord = 2
End If
End If
objCn.Close
Set objRs = Nothing
Set objCn = Nothing
gpError:
check_PassWord = 225
Set objRs = Nothing
Set objCn = Nothing
End Function

Private Sub Command2_Click()
Static intLogTimes As Integer
Dim intChecked As Integer, strName As String, strPassword As String
intLogTimes = intLogTimes + 1
If intLogTimes > MaxLogTimes Then
MsgBox ("你已超过允许验证次数!")
End
Else
strName = Trim(txtUserName.Text)
strPassword = Trim(textPassword.Text)
Select Case check_PassWord(strName, strPassword)
Case 0
MsgBox "&strName& 不是系统用户,请检查用户名是否正确!", vbCritical, "登录验证"
txtUserName.SetFocus
txtUserName.SelStart = 0
txtUserName.SelLength = Len(txtUserName)
Case 1
MsgBox "口令错误,请重新输入", vbCritical, "登录验证"
textPassword = ""
txtPassword.SetFocus
Case 2
Unload Me
MsgBox "登录成功, 将启动系统程序!", vbInformation, "登录验证"
Case Else
MsgBox "登录验证末正常完成,请与管理员联系", vbCritical, "登录验证"
End Select
End If
End Sub

搜索更多相关主题的帖子: 系统 登录 
2007-06-08 17:07
ouzhiguang
Rank: 1
来 自:湖南长沙
等 级:新手上路
威 望:1
帖 子:240
专家分:0
注 册:2007-5-18
收藏
得分:0 
strSQl = "SELECT 口令 FROM 系统用户 WHERE 用户名='"& UserName &"'"
Case 2
Unload Me
form1.show
MsgBox "登录成功, 将启动系统程序!", vbInformation, "登录验证"
你只有隐藏登陆窗口 并没有显示form窗口,你验证成功了,当然也没有显示窗口
你好粗心的!!!
2007-06-08 17:12
lzq_wise1
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2007-1-24
收藏
得分:0 

加上了还不行啊
  总是输出这条语句:
MsgBox "登录验证末正常完成,请与管理员联系", vbCritical, "登录验证"
我认为是在和数据库连接时出了问题,但又不知道出在哪,还望楼上的,再帮下忙,
现在急着用,谢谢了


漫游在指针的世界里
2007-06-10 15:11
lzq_wise1
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2007-1-24
收藏
得分:0 

请版主和各位大虾,帮忙看下,我现在急啊


漫游在指针的世界里
2007-06-10 22:08
reliang
Rank: 1
等 级:新手上路
帖 子:13
专家分:4
注 册:2007-4-18
收藏
得分:0 
加一个trim(strPassword)
2007-06-11 14:30
lzq_wise1
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2007-1-24
收藏
得分:0 

还是不行啊
   


漫游在指针的世界里
2007-06-13 11:46
快速回复:[求助]一个简单的系统登录连接问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017353 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved