Foxtable(狐表)用户栏目专家坐堂 → [求助]关于取消系统自带登陆,用自己的登陆界面和“用户”表


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

主题:[求助]关于取消系统自带登陆,用自己的登陆界面和“用户”表

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


加好友 发短信
等级:婴狐 帖子:26 积分:278 威望:0 精华:0 注册:2016/5/27 10:09:00
[求助]关于取消系统自带登陆,用自己的登陆界面和“用户”表  发帖心情 Post By:2016/6/14 21:52:00 [只看该作者]

我不想用系统自带的登陆,所以自己设计了登陆界面、修改密码界面,还建了“员工”表存放用户信息,这样便于后面做权限控制,现在问题是怎么取消系统自带登陆,用自己的登陆界面和“用户”表

1、用自己的登陆窗口,可以方便用户自己修改密码


此主题相关图片如下:01.png
按此在新窗口浏览图片

2、用自己建了“员工”表存放用户信息,这样便于后面做权限控制

此主题相关图片如下:02.png
按此在新窗口浏览图片

此主题相关图片如下:03.png
按此在新窗口浏览图片

 


 


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


加好友 发短信
等级:婴狐 帖子:26 积分:278 威望:0 精华:0 注册:2016/5/27 10:09:00
  发帖心情 Post By:2016/6/14 21:56:00 [只看该作者]

自动用默认用户登陆了,然后我用自己的登陆界面登陆其他帐号,没有任何区别


图片点击可在新窗口打开查看此主题相关图片如下:05.png
图片点击可在新窗口打开查看

问题是我设置了权限表,根据用户分组来区分表和列的可见不可见,可编辑不可编辑


图片点击可在新窗口打开查看此主题相关图片如下:04.png
图片点击可在新窗口打开查看

 

求助各位大神,谢谢


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/15 0:13:00 [只看该作者]

1、取消系统自带的登陆。设置一个默认用户即可

 

http://www.foxtable.com/help/topics/1796.htm

 

2、有什么问题?你权限表的数据不生效?你控制可见、可编辑的代码怎么写?如果是帮助文档那里的,只需要把 User.Name,User.Group对应改成_UserName,_UserGroup 即可。


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


加好友 发短信
等级:婴狐 帖子:26 积分:278 威望:0 精华:0 注册:2016/5/27 10:09:00
  发帖心情 Post By:2016/6/15 10:07:00 [只看该作者]

代码如下:

AfterOpenProject


For Each t As Table In Tables

    t.Visible = True

    For Each c As Col In t.Cols

        c.Visible = True

        c.AllowEdit = True

    Next

Next


Forms("login").Show()


Dim roles() As String = _UserGroup.Split(",")


For Each role As String In roles

    Dim drs As List(Of DataRow) = DataTables("Authorization").Select("Visual = '" & role & "' or Visual like '" & role & ",*' or Visual like '*," & role & ",*' Or Visual like '*," & role & "'")

    For Each dr As DataRow In drs

        If dr.Isnull("Tables") AndAlso dr.Isnull("Columns") Then

            For Each t As Table In Tables

                t.Visible = False

            Next

        Else If dr.isnull("Columns") Then

            Tables(dr("Tables")).Visible = False

            For Each c As Col In Tables(dr("Tables")).Cols

                c.Visible = False

            Next

        Else

            Tables(dr("Tables")).Visible = False

            For Each c As Col In Tables(dr("Tables")).Cols

                If dr("Columns") = c.name OrElse dr("Columns") Like c.name & ",*" OrElse dr("Columns") Like "*," & c.name & ",*" OrElse dr("Columns") Like "*," & c.name Then

                    c.Visible = False

                End If

            Next

        End If

    Next

    

    drs = DataTables("Authorization").Select("Edit = '" & role & "' or Edit like '" & role & ",*' or Edit like '*," & role & ",*' Or Edit like '*," & role & "'")

    For Each dr As DataRow In drs

        If dr.Isnull("Tables") AndAlso dr.Isnull("Columns") Then

            For Each t As Table In Tables

                t.Visible = False

                t.AllowEdit = False

            Next

        Else If dr.isnull("Columns") Then

            Tables(dr("Tables")).Visible = False

            For Each c As Col In Tables(dr("Tables")).Cols

                c.Visible = False

                c.AllowEdit = False

            Next

        Else

            Tables(dr("Tables")).Visible = False

            For Each c As Col In Tables(dr("Tables")).Cols

                If dr("Columns") = c.name OrElse dr("Columns") Like c.name & ",*" OrElse dr("Columns") Like "*," & c.name & ",*" OrElse dr("Columns") Like "*," & c.name Then

                    c.Visible = False

                    c.AllowEdit = False

                End If

            Next

        End If

    Next

Next


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


加好友 发短信
等级:婴狐 帖子:26 积分:278 威望:0 精华:0 注册:2016/5/27 10:09:00
  发帖心情 Post By:2016/6/15 10:08:00 [只看该作者]

用户登录界面的登录按钮click

Dim user As String = e.Form.Controls("ComboBox1").Text
Dim pwd As String = e.Form.Controls("TextBox1").Text
Dim dr As DataRow = DataTables("Staff").Find("Name = '" & user & "'")  '分开查询,防注入登录
If user="" Then
    MessageBox.show("请输入用户名称!","提示",MessageBoxButtons.OK,MessageBoxIcon.Error)
    Return
Else
    If dr IsNot Nothing Then
        pwd = MD5Encrypt(pwd)
        If pwd = dr("Password") Then
            PopMessage("登陆成功","提示",PopIconEnum.Infomation,1)
            dr("LastLoginTime")=Date.Now
            _UserName = dr("Name")
            _UserLoginName = user
            _UserGroup = dr("Post")
            e.Form.Close()
        Else
            MessageBox.Show("输入的密码错误,请重试!", "出错")
        End If
    End If
End If

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


加好友 发短信
等级:婴狐 帖子:26 积分:278 威望:0 精华:0 注册:2016/5/27 10:09:00
  发帖心情 Post By:2016/6/15 10:11:00 [只看该作者]

打开项目后会报错,具体是这样的


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20160615101001.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/15 10:20:00 [只看该作者]

加入msgbox看看弹出什么

 

msgbox(_UserGroup)

Dim roles() As String = _UserGroup.Split(",")

msgbox(_UserGroup)


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


加好友 发短信
等级:婴狐 帖子:26 积分:278 威望:0 精华:0 注册:2016/5/27 10:09:00
  发帖心情 Post By:2016/6/15 10:34:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20160615101001.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/15 10:39:00 [只看该作者]

那你就这样写

 

If _UserGroup = "" Then

    '一种显示

Else

    '另一种显示

End If


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


加好友 发短信
等级:婴狐 帖子:26 积分:278 威望:0 精华:0 注册:2016/5/27 10:09:00
  发帖心情 Post By:2016/6/15 10:47:00 [只看该作者]

Dim roles() As String = _UserGroup.Split(",")
If _UserGroup = "" Then
MessageBox.Show(_UserGroup & "第一次!","提示",MessageBoxButtons.OK)
Else
MessageBox.Show(_UserGroup & "第二次!","提示",MessageBoxButtons.OK)
End If

 

运行后反应和最开始一样,为什么连MessageBox都没看到??


 回到顶部
总数 24 1 2 3 下一页