以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]怎么使用外部数据源进行用户账号密码比对? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=98792) |
-- 作者:aduydgd -- 发布时间: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 |
-- 作者:有点青 -- 发布时间: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 -- 发布时间:2017/4/7 12:16:00 -- 系统的里的密码可不是直接单独存的 而是这样的Group施工部PassWordEmIR5WBjrFGjO7SHZdBWwQ==Type2Role经理 用上面的代码不行啊
|
-- 作者:aduydgd -- 发布时间:2017/4/7 13:03:00 -- 可用 |
-- 作者:有点蓝 -- 发布时间:2017/4/7 14:11:00 -- 参考:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=98214&skin=0 |
-- 作者:有点青 -- 发布时间: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 |