社区中 我要自立“门派”

技术与开发

有人的地方就有江湖,有江湖的地方就有门派。小编我是非常认同这句话的,志同道合者总是最容易走到一起。最近小编我就在某个社区成立了“倚天屠龙派”,吸引了很多喜欢金庸小说的社区用户加入,好不热闹。大家想知道社区的门派系统是怎么设计出来的吗?

42-f12-1-1.jpg

要制作门派插件,首先就要判断要创立门派的网友是否满足创立门派的相关条件,然后制作一个创立门派的相关信息填写页面,最后将加入门派的功能集成到用户资料页面里供网友使用。根据相似原理,我们还可以制作社区部落插件等。

第一步 审核门派创立条件

为了防止太多的门派出现,保证门派的价值,在创立门派的时候,我们应该设置一个比较苛刻的限制,只有极少数的网友才能创立。这里我们可以限制的条件有社区网友的魅力值、经验值、金钱、威望、和发帖数,还有就是每个网友只能创建一个门派。

当然,如果再苛刻一点我们可以设置一个推荐人数,必须有一定数量的网友推荐才能创立门派。从社区数据库中读取用户的相关资料,依据我们的限制条件判断他是否可以创立门派。新建一个ASP页面,输入相关代码,其中关键代码如下所示(完整代码下载地址:http://www.shudoo.com/bzsoft):

〈td align=center height=21 class=tabletitle2〉项目〈/td〉

〈td align=center height=21 class=tabletitle2〉金钱〈/td〉

〈td align=center height=21 class=tabletitle2〉魅力〈/td〉

〈td align=center height=21 class=tabletitle2〉经验〈/td〉

〈td align=center height=21 class=tabletitle2〉威望〈/td〉

〈td align=center height=21 class=tabletitle2〉文章〈/td〉

〈td align=center height=21 class=tablebody2〉用户等级〈/td〉

〈td align=center height=21 class=tablebody2〉门派〈/td〉

〈td align=center height=21 class=tablebody2〉创派要求〈/td〉

〈td align=center height=21 class=tablebody2〉您的条件〈/td〉

〈td align=center height=21 class=tablebody1〉〈%=mymoney%〉〈/td〉

〈td align=center height=21 class=tablebody1〉〈%=myusercp%〉〈/td〉

〈td align=center height=21 class=tablebody1〉〈%=myuserep%〉〈/td〉

〈td align=center height=21 class=tablebody1〉〈%=mypower%〉〈/td〉

〈td align=center height=21 class=tablebody1〉〈%=myArticle%〉〈/td〉

〈tr〉〈td align=center height=21 class=tablebody1 colspan=8〉

〈%if CanCreateMenpai then%〉

〈a href="menpaiadd.asp?menu=8"〉〈font color=blue〉创建新门派〈/font〉〈/a〉

〈%else%〉

〈font color=red〉您至少有一个条件不满足创派要求〈/font〉

第二步 创立信息填写页面

创立门派必须要有门派名、掌门人以及门派的简介,当然这些都是基本信息。大家还可以添加一些关于门派的其他信息,如门派的正邪性质等。为了防止一些不符合门派条件的人加入到门派里,我们还可以添加加入门派的限制信息。

当创立者填写好门派信息,审核成功后加入到数据库中备用。新建一个数据库,用来存取门派信息。新建一个ASP文件,输入相关代码实现该功能,其中关键代码如下所示(完整代码下载地址:http://www.shudoo.com/bzsoft):

if GroupName="" then

Errmsg=Errmsg+"〈br〉"+"〈li〉请输入门派名称"

founderr=true

elseif strLength(GroupName)〉12 then

Errmsg=Errmsg+"〈br〉"+"〈li〉门派名称不能超过12个英文字母(6个汉字)"

founderr=true

end if

if cint(MenpaiAttri)〈〉0 then

if not isInteger(Request.form("userwealth")) then

Errmsg=Errmsg+"〈br〉"+"〈li〉非名门正派必须填写金钱值或者您填入的不是有效的数值"

founderr=true

elseif int(Request.form("userpower"))〉mypower then

Errmsg=Errmsg+"〈br〉"+"〈li〉您输入的威望有效值大于您自己的当前值!"

founderr=true

else

userpower=int(Request.form("userpower"))

end if

if not isInteger(Request.form("userarticle")) then

Errmsg=Errmsg+"〈br〉"+"〈li〉非名门正派必须填写文章数或者您填入的不是有效的数值"

Sucmsg=Sucmsg+"〈br〉"+"〈li〉您成功创建了 " & GroupName & ",请等待管理员的审核"

else

Sucmsg=Sucmsg+"〈br〉"+"〈li〉新门派已经成立,您成为该门派的掌门了,恭喜新掌门上任"

第三步 在用户资料页面集成门派功能

创立了门派以后,当然就是让更多的网友加入进来,我们把加入门派的功能集成到用户资料页面里,用户通过该页面就可以选择加入到某个门派里了。从社区用户数据表中读取相关用户资料,从门派信息表中读取加入门派的限制信息,对比这两个数据,符合条件,该网友便可成功加入,否则拒绝加入。打开社区根目录文件mymodify.asp,在“个人照片”栏目下新建一个表格,输入代码,其中关键代码如下所示(完整代码下载地址:http://www.shudoo.com/bzsoft):

dim grs

set grs=conn.execute("select * from GroupName")

if grs.eof and grs.bof then

%〉

〈option value="无门无派"〉无门无派〈/option〉

〈%else%〉

〈%do while not grs.eof%〉

门派插件可以让有相同兴趣的人聚集在一起,这样使社区的用户人群划分更加明显,让我们很容易针对特定用户组织活动、安排事务等,而门派之争,更能促进社区不同类型的网友交流。本文的门派插件功能还比较简单,大家可以视自己的需求修改出功能更加丰富的门派插件,如增加华山论剑、门派客栈、清理门户等功能。