以文本方式查看主题 - Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp) -- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2) ---- [求助]已注册用户未被批准不准登陆,怎么改代码? (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=84636) |
-- 作者:viking -- 发布时间:2016/5/6 10:49:00 -- [求助]已注册用户未被批准不准登陆,怎么改代码? 已注册用户未被批准不准登陆,怎么改代码? sql环境,在数据库表中增加了2逻辑列,一列“系统批准”一列“公司批准” 如果新用户注册账号成功以后,只有这2列同时勾选时,才可以登录,否则提醒客户,这个怎么改?
|
-- 作者:大红袍 -- 发布时间:2016/5/6 11:13:00 -- 你用系统的登陆窗口,还是自己做的登陆窗口?
如果是系统自带的,你无法控制登陆,不过你可以在LoadUserSetting事件,查询用户的表记录,从而提醒用户;
如果是自己做的登陆窗口,就直接find对应的数据行,检查那两列是否勾选。 |
-- 作者:viking -- 发布时间:2016/5/6 15:58:00 -- sql find 不会写,能帮个忙吗? |
-- 作者:大红袍 -- 发布时间:2016/5/6 16:01:00 -- Dim fdr As DataRow = DataTables("users").SqlFind("name = \'" & user.Name & "\'") If fdr Is Nothing Then msgbox("用户不存在") Else If fdr("系统批准") = False OrElse fdr("公司批准") = False Then msgbox("你没被批准") End If End If |
-- 作者:viking -- 发布时间:2016/5/6 18:38:00 -- DataTables("users") 表是未加载到系统的表,这个会找不到表“users” |
-- 作者:458445945 -- 发布时间:2016/5/6 23:07:00 -- Dim dt As DataTable Dim cmd As New SQLCommand cmd.C cmd.Command Text ="S elect 系统批准,公司批准 From {Users} Where Name = \'" & Name & "\' and pass = \'" & pass & "\'" dt = cmd.Execute Reader For Each dr As DataRow In dt.DataRows if dr isnot notthing then if val(dr("系统批准")) = 0 orelse val(dr("公司批准")) = 0 then Messagebox.Show("未授权","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) end if exit for else Messagebox.Show("用户或密码错误","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) end if Next
[此贴子已经被作者于2016/5/6 23:14:52编辑过]
|
-- 作者:大红袍 -- 发布时间:2016/5/8 14:58:00 -- 以下是引用viking在2016/5/6 18:38:00的发言:
DataTables("users") 表是未加载到系统的表,这个会找不到表“users”
你添加一个users表进来吧,方便查询
http://www.foxtable.com/help/topics/1812.htm
|