我们在网站建设过程中,特别是政府网站制作中,经常会遇到这样的问题,很多栏目要分配给不同的管理员管理,管理员只能看到,并修改编辑属于自己管理权限范围内的栏目信息。这样的功能我们应该如何制作呢。
下如何用Aspmaker实现这样的功能。
第一步,建立后台数据库,其他的表我们就不详细讲解了,这里只讲一个表就是管理员表。之所以要特别列出这个表,是因为表内要设置一个特殊的字段:栏目权限(lmqx)。下面列出该表的结构图。
第二步,在Aspmaker中导入数据库,之前有详细讲解过,不会的朋友请看这里http://www.chinaz.com/web/2011/1020/214800.shtml
第三步,在aspmaker中,选择管理员表(users),单击“栏目权限“字段(lmqx),在字段的Edit Tag选项框中选择checkbox控件,选中Use lookup table选项,在右边弹出的lookup table选项框中进行如下设置:table name:lm;linke field:id;display field#1:lmmc。如图。
第四步,在aspmaker中找到Server Events/Client Scripts选项,选择其中的Other-user_loggingin,在左边弹出的代码空中,加入下面代码,意思就是登录的时候赋值管理员栏目权限字段的值给session。
' User Logging In event
Function User_LoggingIn(usr, pwd)
If Not EW_DEBUG_ENABLED Then On Error Resume Next
' Enter your code here
'To cancel, set return value to False
User_LoggingIn = True
sql="select * from users where usr='"&usr&"'"
set rs=conn.execute(sql)
do while not r2.eof
session("lmqx")=rs("lmqx")
r2.movenext:loop:set r2=nothing
End Function
详细设置如图:
第五步,在aspmaker中,选择Tables/views快捷按钮,在栏目表和内容表的Filter选项框中输入一下代码:id in session("lmqx"),意思就是在栏目和新闻中过滤,只有管理员权限范围内的表才可以看见和编辑。详细设置如下图。
经过上面的五个步骤,你就可以实现在后台设置管理员可以管理的栏目,管理员登录后,只能查看修改删除自己权限内的栏目和信息。
木子网页设计http://www.muzisj.com希望此文能对网站建设者们有所帮助。
感谢 阿郎 的投稿