【VB开源代码栏目提醒】:本文主要为网学会员提供“VB6类模块封装的登录及修改密码模块(源码、注释) - 讲义教程”,希望对需要VB6类模块封装的登录及修改密码模块(源码、注释) - 讲义教程网友有所帮助,学习一下!
VB6 类模块封装的登录及修改密码模块源码、注释 学会
VB6.0 以来,为公司编制了很多小型数据库
软件。
经常地用到登录以及密码修改模块的建立。
基本模式都是一样的,只是数据表名、用户名字段、密码字段稍有不同。
因此将其做成类模块。
每次不用重复写好些行
代码。
对本段
代码有什么建议的话可百度私信我,或百度贴吧wink5000 ,让我们一起
学习进步。
大家可以随意传播此文件进行学习。
本模块
代码为两部分,一部分为类模块,第二部分为类模块实例后应用。
一、PassChange 类模块 模块名称:PassChange 作 者:wink5000 模块属性:TableName、UserName、PassWord 方法函数:PassWordChange 返回值类型: Boolean 具体
代码如下:Option ExplicitPublic TableName As StringPublic UserName As StringPublic PassWord As StringPublic Function PassWordChangeByVal tempUserName As String ByVal tempPassWord AsString ByVal newPassWord1 As String ByVal newPassWord2 As String As Boolean 这段
代码验证用户名密码不能为空 If tempUserName Or tempPassWord Then PassWordChange False MsgBox 用户名密码不能为空 Exit Function End If 这段
代码分验证两次填写的新密码不能为空 If newPassWord1 Or newPassWord2 Then PassWordChange False MsgBox 新密码不能为空 Exit Function End If 这段
代码验证两次输入的新密码是否相同。
If newPassWord1 newPassWord2 Then PassWordChange False MsgBox 请确认两次输入的新密码是否相同? Exit Function End If 这段
代码判断原用户名密码是否正确,即对应的记录是否存在,存在则修改,并返回true;否则提示“原密码错误”,并返回 false。
注意:笔者的 Cnn 连接字符串已经在模块中定义,用户如果使用
代码请自定义 Cnn。
Dim rs As ADODB.Recordset Set rs New ADODB.Recordset Dim sql As String
sql select from TableName where UserName tempUserName and PassWord tempPassWord rs.Open sql Cnn adOpenKeyset adLockOpti
mistic 判断是否有记录 If rs.RecordCount 0 Then PassWordChange True 更新记录并关闭数据库连接 rs.FieldsPassWord newPassWord2 rs.Update rs.Close Else 无记录也要关闭数据库连接,请注意。
PassWordChange False MsgBox 原密码错误! rs.Close End IfEnd Function二、修改密码界面及
代码如下: 具体
代码含义见注释。
Private Sub Command1_Click 声明一个 PassChange 类的实例。
Dim mc As New PassChange 为实例的属性赋值。
mc.TableName ht_user mc.UserName uname mc.PassWord ps
word 将各个参数所对应的值填写到参数位置。
并判断 PassChange 类的 PassWordChange 方法的返回值。
返回值为真,密码修改成功。
If mc.PassWordChangeText1.Text Text2.Text Text3.Text Text4.Text True Then MsgBox 密码修改成功! End IfEnd Sub 总结:上述
代码只需要修改少量
代码即可实现登录验证。
如果将类模块中关于新密码验证的
代码部分删除,可直接作为登录验证使用。
使用是将 newPassWord1、newPassWord2 两个参数值设置为0 即可。
但验证无错误密码次数统计。
适合内部人员使用,否则被破解了就郁闷了。
欢迎与笔者交流。
信箱:wink5000163.com