以文本方式查看主题

-  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=27965)

--  作者:mamasong
--  发布时间:2013/1/15 10:31:00
--  自定义用户管理与权限

我按照帮助,设置了,自定义的用户管理与权限

但是想实现,除了管理员,登录用户也可以自己修改密码,但是不能修改别人的密码,因为目前的帮助中的代码,登录人员是可以看到其他人的密码的,也可以修改,如何让用户管理中的 listbox1 中只出现登录人员自己的名字呢?

Dim cmd As New SQLCommand
Dim dt As DataTable
Dim lst As WinForm.ListBox = e.Form.Controls("ListBox1")
cmd.C
cmd.CommandText = "SELECT DISTINCT Name From {Users}"
dt = cmd.ExecuteReader()
For Each dr As DataRow In dt.Datarows
lst.Items.Add(dr("Name"))
Next
If Lst.Items.Count > 0 Then
lst.SelectedIndex = 0
End If

这是用户管理窗口中 afterload 中的代码

要如何再增加密码,实现我上面所述功能呢


--  作者:lin_hailun
--  发布时间:2013/1/15 11:01:00
--  
 两种方法,点击用户管理的时候,判断是否是管理员,如果是,打开正常窗口,如果是普通员工,打开另一个窗口。

 方法二,在afterload判断是否是管理员,如果不是,
     cmd.commandText = "select distinct name from {users} Where name = \'" & _UserName & "\'"
     ......
     e.Form.Controls("Button1").Enabled = False

--  作者:mamasong
--  发布时间:2013/1/15 12:36:00
--  

在林大侠的大力帮助下,终于解决了这个难题,我采用了方法二,真是谢谢啊,再次表示感谢。


--  作者:mamasong
--  发布时间:2013/1/15 12:45:00
--  

可是,还出现了一个问题,就是用了用户自定义权限之后

以管理员名字登录进去,返回系统菜单,仍然不能进行开发相关功能的编辑,菜单设计什么的都不能用了

按住ctrl键已开发者身份登录进去,数据又都没有了,这可怎么办,是什么原因呢?


--  作者:hanxuntx
--  发布时间:2013/1/15 12:49:00
--  
权限管理,狐表的痛
--  作者:mamasong
--  发布时间:2013/1/15 13:23:00
--  
图片点击可在新窗口打开查看
--  作者:mamasong
--  发布时间:2013/1/15 13:57:00
--  
谁又遇到类似的情况,有高手解决的了的吗?
--  作者:lin_hailun
--  发布时间:2013/1/15 13:59:00
--  
以下是引用mamasong在2013-1-15 12:45:00的发言:

可是,还出现了一个问题,就是用了用户自定义权限之后

以管理员名字登录进去,返回系统菜单,仍然不能进行开发相关功能的编辑,菜单设计什么的都不能用了

按住ctrl键已开发者身份登录进去,数据又都没有了,这可怎么办,是什么原因呢?


这样吧,最好做一个按钮叫 设计模式,然后写入代码 Syscmd.Project.SwitchUser()

然后在项目事件的->LoadUserSetting写入切换到系统菜单就行了。这样也不难吧?

一般,用户管理都是在最后的时候弄的,这个时候你的系统基本弄好了。

--  作者:mamasong
--  发布时间:2013/1/15 14:40:00
--  
恩,我基本上都弄完了,就只是权限没有设置,不知道这样会不会受到影响
--  作者:mamasong
--  发布时间:2013/1/16 14:15:00
--  

这样做是可以了,可是普通用户也可以使用系统菜单了,我想实现除了管理员可以见到系统菜单进行设置,其他用户都只能在编辑好的窗口里操作。那么我要加一个判断,就是是否切换到了“开发者”登录模式下?

请问,如何编辑这条代码呢?