
下面打开VB6.0,建立一个新的工程,命名为工程1,打开就有一个新的窗体Form1。布置界面如图所示,当然这只是个示例,你可以有更好的界面设计。图中,管理员名称和口令是两个文本框,名称分别为TxtUserName 和TxtPassword,登录和取消为两个按钮,名称分别为CmdLogin和CmdCancel。
准备工作完成之后,就可以添加代码了。代码如下,我将逐行注释。
取消按钮最为简单,代码如下:
Private Sub CmdCancel_Click()
'//结束
End
End Sub
下面添加登录按钮的代码。
Private Sub CmdLogin_Click()
Dim UserName As String
Dim PassWord As String
Dim conn As New ADODB.Connection '定义新的连接
Dim rs As New ADODB.Recordset'定义新的记录集
Dim StrSQL As String '定义字符串StrSQL
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0Data Source=D:\db1.mdb" '打开连接,指定连接路径和支持
UserName = Trim(TxtUserName.Text)'将文本框内的值赋给定义好的变量,trim为类型转换函数
PassWord = Trim(TxtPassword.Text)
If UserName = "" Or PassWord = "" Then'如果输入的用户名和密码为空则
MsgBox "对不起,用户或密码不能为空!请重新输入!!", vbCritical, "错误"
ElseIf UserName <>Empty And PassWord <>Empty Then '否则如果用户名与密码都不为空则Cnum自加1,Cnum为窗体载入时添加数字变量,用于记录错误登录次数
Cnum = Cnum + 1
StrSQL = "select * from 用户信息表 where 用户名称= '" &UserName &"'and 用户口令 ='" &PassWord &"'"
'从用户信息表中查询用户名称和用户口令两个字段并获得属性值,为下面的判断语句做准备
rs.Open StrSQL, conn, adOpenKeyset, adLockPessimistic '//打开记录集,可以用数字代替
If rs.EOF = True Then '此句为判断的核心语句,EOF的返回值表示为最后一行的后一行,和BOF类似,返回值为TRUE,则表示表中不存在这一行记录,由此判断密码是否与表中记录相一致,从而达到验证的目的。
MsgBox "对不起,无此用户或者密码不正确!请重新输入!!", vbCritical, "错误"
TxtUserName.Text = "" '置文本框为空
TxtPassword.Text = ""
TxtUserName.SetFocus
rs.Close '每次打开记录完成后需要注意及时关闭,不然下次使用时会出错
If Cnum >= 3 Then '判断输入错误次数,以提高系统的安全性能
MsgBox "对不起,您已经多次失败,无权 *** 作本系统!", vbCritical, "无权限"
Unload Me
Exit Sub
End If
Else '登陆成功,以下为权限验证
Form2.Show
Unload Me
End if
End if
End Sub
Private Sub Form_Load()
'//加载主窗时给文本框赋值
Cnum = 0
做不到,access数据库是本地数据库,不支持网络访问,建议你换成sql server或者mysql之类的数据库。注:如果一定要远程访问access也不是不行,有两种办法,一个是服务器如果跟你在同一个局域网,可以把数据库文件夹共享出来,当做共享文件访问。另一种是在那台服务器上装个sql server数据库,sql server可以创建出链接数据库链接到那个access.
在登录按钮的单击事件(Click)中获取输入的用户名和密码dim username as string
dim password as string
username=text1.text
password=text2.text
然后和和数据库中的数据比较就行了
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)