前言

机房中有改密码的功能,但是是要知道原密码才能改。如果现在系统已经打包供给客户进行使用了,客户登录密码忘记了,怎么解决?这时,密保派上用场了。看看我是怎么实现这个功能的!

样式展览

机房收费系统优化——添加密保功能
机房收费系统优化——添加密保功能
机房收费系统优化——添加密保功能
机房收费系统优化——添加密保功能
机房收费系统优化——添加密保功能

功能介绍

1.登录时自动检测此账号是否设置密保,如果没有密保,自动弹出设置密保窗体,设置成功才可登录。
2.忘记密码通过之前设置的密保找回,选择问题,答案,输入验证码,全部正确后方可修改密码。
3.我在数据库中添加了一个表,列名分别为:用户名,密保问题,密保答案。

验证码部分代码

Private Sub Picture1_Click()
    Randomize Timer    '随机种子
    y = ""
    Picture1.Cls       '图片框清屏
    For i = i To 3     '四个字符
        
        '设置字符字号,字形
        Picture1.FontSize = Int(Rnd * 13 + 12)       '[12,24]字号随机
        j = Int(Rnd * 4) + 1                         '[1,4]随机数
        If i = j Then Picture1.FontItalic = True     '对应位置倾斜
        
       '颜色随机
        k1 = Int(Rnd * 256)
        k2 = Int(Rnd * 256)
        k3 = Int(Rnd * 256)
        Picture1.ForeColor = RGB(k1, k2, k3)
        
        '产生随机字符
        k = Int(Rnd * 3)
        Select Case k
            Case 0: a = 48: b = 57       '数字
            Case 1: a = 65: b = 90       '大写字母
            Case 2: a = 90: b = 122      '小写字母
        End Select
        
        '记录并输出字符
        x = Int(Rnd * (b - a + 1) + a)      '随机数
        y = y & (Chr(x))
        Picture1.Print Chr(x) & " ";        '图片框输出
        Picture1.FontItalic = False         '不倾斜
    Next i
    
    '画一条随机位置的线条
    Picture1.Line (0, 0)-(Int(Rnd * 500 + 1000), Int(Rnd * 150) + 100)
End Sub

相关文章:

  • 2021-04-17
  • 2021-11-02
  • 2021-06-17
  • 2021-08-04
  • 2021-10-03
  • 2021-06-27
  • 2022-12-23
  • 2022-01-05
猜你喜欢
  • 2021-11-27
  • 2021-08-30
  • 2021-09-18
  • 2021-06-22
  • 2021-08-04
  • 2022-12-23
  • 2021-10-13
相关资源
相似解决方案