大家使用动网论坛中有没有为这个问题烦恼过? 看版主发的贴,不能直观知道此版主是管理何版块的,想知道,只能点击信息进入查看。 如果没有,就不要看下面了~~ 今天发布的这个修改就是他们论坛职务的直观调用,没有涉及到查询数据库的操作,直接使用系统缓存,快速直观。 以下是修改方法: 一、首先打开dispbbs.asp,在最后一个%>前面增加以下函数代码: Function GetAdminPost(UserName,ClassName) GetAdminPost=Server.HTMLEncode(ClassName) \'考虑到GroupID作用不同,故使用等级称谓来判断 Dim ClassList,I ClassList=split(\"管理员,超级版主,版主\",\",\") For I=0 to Ubound(ClassList) If ClassList(I)=ClassName Then I=0:Exit For Next If I>0 Then Exit Function Dim Model,XMLDOM,str,ThisMaster,Cname,Node,TmpID Model=\"\" Str=\"\" : ThisMaster = \"[友情]\" Set XMLDOM=Application(Dvbbs.CacheName&\"_Boradlist\") For Each Node in XMLDOM.documentElement.getElementsByTagName(\"board\") If Instr(\"|\"&node.attributes.getNamedItem(\"boardmaster\").text&\"|\",UserName)>0 Then Cname=node.attributes.getNamedItem(\"boardtype\").text TmpID=Cint(node.attributes.getNamedItem(\"boardid\").text) If Dvbbs.BoardID = TmpID Then ThisMaster = \"[本版]\" Cname=Cname&ThisMaster End If Str=Str&Replace(Replace(Model,\"{$POST}\",Cname),\"{$BID}\",TmpID) End If Next Set XMLDOM=nothing If Str=\"\" Then ThisMaster=\"[荣誉]\" If ClassName<>ClassList(0) Then Cname=ThisMaster&ClassName Else Cname=ClassName&\" [无职务]\" Else If ClassName=ClassList(2) Then ClassName=ThisMaster&ClassName Cname=ClassName&\" [职务]\" End If GetAdminPost = Cname End Function %> ,再跑到第290行左右,找到代码:RootID_a=Rs(\"RootID\"),下面添加一行代码: node.attributes.getNamedItem(\"userclass\").text=GetAdminPost(UserName,Rs(\"userClass\")) 二、后台风格管理,Page_dispbbs,Template(15),找到代码:
改成:
好了,修改完毕! |