数据库登录账号和密码的验证

易语言数据库密码验证

1,首先我们需要创建一个用来存储密码的数据库
在这里插入图片描
分别在数据库中建立一个存储账号和密码的名称,类型为文本型,
2,数据库创建好了以后,我们需要手动把原始账号和密码添加到数据库里,打开数据库,点击结构编辑器,选中当前刚刚创建好的数据库,点击打开按钮,在增删选项中选择“添加一条空记录,然后把账号和密码手动输入在对应的编辑框中,这需要注意,密码的内容不可直接输入,需要将密码换算成MD5值后进行保存。”
在这里插入图片描述
3,附件上代码

.版本 2

.程序集 窗口程序集_启动窗口

.子程序 __启动窗口_创建完毕

输出调试文本 (校验_取md5_文本 (“admin”))


.子程序 _按钮登录_被单击
.局部变量 mima, 文本型

' 打开pwd数据库
打开 (取运行目录 () + “\pwd.edb”, , , , , , )
' 数据库指针指向第一条记录
到首记录 ()
' 读数据库mm的值赋值给变量mima
mima = 读 (“mm”)
' 关闭当前所有数据库
全部关闭 ()
' 判断编辑框的内容值的MD5等于变量mima的值
.如果 (校验_取md5_文本 (编辑框密码.内容) = mima)
    ' 如果一样,载入主窗口
    载入 (主窗口, ,)
    ' 销毁当前窗口
    销毁 ()
.否则
    ' 如果不一样,弹出信息框
    信息框 (“m密码错误”, 0, , )
.如果结束
' 结束当前子程序
返回 ()


.子程序 _按钮1_被单击
.局部变量 mima, 文本型

' 打开newpwd.edb数据库
打开 (取运行目录 () + “\newpwd.edb”, , , , , , )
' 判断数据库中读到  zhanghao 的值 和编辑框账号的内容是否相同
.如果 (查找 ((“zhanghao”) = 编辑框账号.内容))
    ' 如果条件成立(真),向下执行以下代码
    ' 查到的zhanghao的值 赋值给 变量 mima
    mima = 读 (“mima”)
    ' 判断编辑框的内容装换成MD5码是否等于变量mima的值
    .如果 (校验_取md5_文本 (编辑框密码.内容) = mima)
        ' 如果条件成立,向下执行代码
        ' 调用函数 载入 对话框方式选中为 假
        载入 (主窗口, ,)
        ' 关闭当前所有数据库
        全部关闭 ()
        ' 如果编辑框密码的内容MD5值不等于变量mima的值,向下执行代码
        ' 销毁当前窗口
        销毁 ()
    .否则
        ' 填出信息框提示
        信息框 (“m密码错误”, 0, , )
    .如果结束

.否则
    ' 如果在数据库中读到zhanghao的内容不等于编辑框的内容,向下执行,
    ' 弹出对话框提示
    信息框 (“账号不存在”, 0, , )

.如果结束
' 关闭当前数据库
全部关闭 ()

.子程序 _按钮2_被单击
.局部变量 i, 整数型
.局部变量 zhanghao, 文本型
.局部变量 mima, 文本型

' 打开密码数据库
打开 (取运行目录 () + “\newpwd.edb”, , , , , , )
' 选中第一条记录
到首记录 ()
' 开始循环 按照当前记录数量循环
.计次循环首 (取记录数 (), i)
    ' 读取当前选中的账号
    zhanghao = 读 (“zhanghao”)
    ' 判断账号是否跟输入的一样
    .如果 (zhanghao = 编辑框账号.内容)
        ' 如果一样 读取当前选中行的密码
        mima = 读 (“mima”)
        ' 判断读取到的密码MD5是否跟密码框的MD5一样
        .如果 (校验_取md5_文本 (编辑框密码.内容) = mima)
            ' 如果一样 载入主窗口
            载入 (主窗口, ,)
            ' 关闭之前打开的数据库
            全部关闭 ()
            ' 销毁当前窗口
            销毁 ()
            ' 结束当前子程序
            返回 ()
        .否则
            ' 如果不一样弹出密码错误
            信息框 (“m密码错误”, 0, , )
            ' 关闭数据库
            全部关闭 ()
            ' 结束当前子程序
            返回 ()
        .如果结束

    .否则
        ' 如果账号不一样 用跳过函数选中下一行
        跳过 ()
    .如果结束

.计次循环尾 ()
' 如果循环结束还没找到账号 弹出账号不存在
信息框 (“zhanghaobucunzai”, 0, , )
' 关闭数据库
全部关闭 ()


发布了1 篇原创文章 · 获赞 0 · 访问量 7

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 游动-白 设计师: 上身试试

分享到微信朋友圈

×

扫一扫,手机浏览