Foxtable(狐表)用户栏目专家坐堂 → [求助]怎么使用外部数据源进行用户账号密码比对?


  共有4817人关注过本帖树形打印复制链接

主题:[求助]怎么使用外部数据源进行用户账号密码比对?

帅哥哟,离线,有人找我吗?
aduydgd
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:681 积分:5332 威望:0 精华:0 注册:2011/12/26 20:43:00
[求助]怎么使用外部数据源进行用户账号密码比对?  发帖心情 Post By:2017/4/7 10:03:00 [只看该作者]

If e.Path = "logon.htm" '验证用户名和密码
    If e.PostValues.ContainsKey("username") AndAlso e.PostValues.ContainsKey("password"Then
        Dim Verified As Boolean '用于标记用户是否通过了身份验证
        UserName = e.PostValues("username")
        Password = e.PostValues("password")
        If UserName = "张三" AndAlso Password = "888" Then  '实际使用的时候,请改为从数据库读取用户名和密码进行比较
            Verified  = True
        ElseIf Username = "李四" AndAlso Password="999" Then
            Verified  = True
        End If
        If Verified Then
            UserID = Rand.NextString(16) '生成随机用户ID
            UserName = EncryptText(UserName,"123","123") '将用户名加密.
            Dim dr As DataRow = UserTable.Find("UserName = '" & UserName & "'")
            If  dr IsNot Nothing Then '如果是重复登录,删除以前的登录信息
                dr.Delete()
            End If
            dr = UserTable.AddNew()
            dr("UserName") = UserName
            dr("UserID") = UserId
            dr("ActiveTime") = Date.Now '记录登录时间
            wb.AppendCookie("username",UserName) '将用户名和密码写入cookie
            wb.AppendCookie("userid",UserID)
            wb.InsertHTML("<meta http-equiv='Refresh' c>") '直接跳转到首页
            e.WriteString(wb.Build) '生成网页
            Return '必须的
        End If
    End If

 回到顶部
帅哥哟,离线,有人找我吗?
有点青
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:573 积分:2961 威望:0 精华:0 注册:2016/10/27 14:33:00
  发帖心情 Post By:2017/4/7 10:33:00 [只看该作者]

Dim dr As DataRow = DataTables("表A").Find("用户 = '" & userName & "'")

If dr IsNot Nothing AndAlso dr("密码") = Password Then

    Verified  = True

End If


 回到顶部
帅哥哟,离线,有人找我吗?
baiheinet
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:190 积分:1540 威望:0 精华:0 注册:2015/7/14 15:05:00
  发帖心情 Post By:2017/4/7 12:16:00 [只看该作者]

系统的里的密码可不是直接单独存的

而是这样的Group 施工部 PassWord EmIR5WBjrFGjO7SHZdBWwQ== Type 2 Role 经理

用上面的代码不行啊

 回到顶部
帅哥哟,离线,有人找我吗?
aduydgd
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:681 积分:5332 威望:0 精华:0 注册:2011/12/26 20:43:00
  发帖心情 Post By:2017/4/7 13:03:00 [只看该作者]

可用

 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110608 积分:562942 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/4/7 14:11:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
有点青
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:573 积分:2961 威望:0 精华:0 注册:2016/10/27 14:33:00
  发帖心情 Post By:2017/4/7 14:23:00 [只看该作者]

以下是引用baiheinet在2017/4/7 12:16:00的发言:
系统的里的密码可不是直接单独存的

而是这样的Group 施工部 PassWord EmIR5WBjrFGjO7SHZdBWwQ== Type 2 Role 经理

用上面的代码不行啊

 

一样的意思

 

msgbox(MD5Encrypt(password))

Dim dr As DataRow = DataTables("表A").Find("用户 = '" & userName & "'")

If dr IsNot Nothing AndAlso dr("config") like "*" & MD5Encrypt(password) & "*" Then

    Verified  = True

End If


 回到顶部