在线排行榜制作方法详解 (解禁)
还是简单说一下这次的友情测试制作方法吧。范例下载:http://rpg.blue/web/shownews.asp?id=516
制作思路:
0、前提要求:至少需要一个数据库或者文件来存放排名,建议当然是数据库。此外至少需要一个支持asp+access的网上空间来保存数据库和查看信息。
0、看这个教学的前提要求:要不然懂数据库+ASP,要不然有比较深的钻研精神。比如我自己是不懂ASP的,也就是之前被逼得经常修改论坛功能,自己瞎试出来一些。之后花了很长时间编那个论坛监狱才算正式比较了解了数据库和ASP的构建。
网上放数据库的空间和域名请自己去购买。
1、建立数据库,用Office 2003里面的Access进行制作。以本题为范例,建立表 answers,内容包括id(自动编号)、score(得分)、answerID(回答问题的用户ID)、a1,a2,a3,a4,a5,a6,a7,a8,a9,a10(记录用户回答的10个答案)。
2、把数据库上传自己的空间。
3、建立查询功能,本范例命名为friends66.asp,可通过rpg.blue/friends66.asp访问,内容如下:
;。复制代码
前面第一部分是定义一些变量,what=trim...这个是记录what,来决定用什么方法查询。
yecaopath=这个是数据库的相对文件地址。
connlink1,connlinkstr是打开数据库用的,rs用来保存数据库记录。
if这段,就是如果what为空,则直接按积分反顺序查询,否则按id反顺序查询(近期答题记录)。所以可以通过rpg.blue/friends66.asp?what=new 来访问近期记录,而rpg.blue/friends66.asp 访问最高记录。
rs.open这个就是把数据库记录存到rs里面去。
for循环一段,按顺序取前20个记录,并且输出在屏幕上。是本行第一个记录(answerID),是本行第二个记录(score)
最后关闭数据库。这样就可以查询数据库了(网页功能)。
存入数据库。还是建立.asp文件,本例是friends66as.asp
ID :选项1 : 选项2 : 选项3 : 选项4 : 选项5 : 选项6 : 选项7 : 选项8 : 选项9 : 选项10: 总分: 你已经答过了,当时得分是:复制代码
首先是SPD本论坛的功能,获取u_name,也就是66RPG论坛登陆名。如果论坛名为空,则返回登陆界面。如果不是使用论坛,则自己类似上面what那样让玩家传递自己的姓名即可。
然后看到游戏里面是传递了?a=54321&b=a9876这样,数字是题号的答案。所以a是1-5题答案,用right()方法一个一个获取答案,b也是,一个一个获取答案,最后和答案对比一下,并把玩家的答案和成绩显示在屏幕上。
sql那个就是把成绩输入到数据库,这么看可能很费劲,不过用UltraEdit打开的话看起来还是很简单的。最后关闭数据库。
做到这里已经完成90%,最后就是RMXP的客户端一点小功能。
一个是“谁在灌水”这个老工程,只是把获取的信息改为friends66.asp这里,然后用split(/。/)来分段成一个一个的信息,再split(/;/)来获取用户名和成绩。获取之后就是自己编一个小窗口来显示信息即可。这样获取的部分全部完成。
另一个是上传,用RMXP连接网站的功能(早在邓稼先传、三国凡人传的时候就用过了),然后在asp参数里面提供分数即可。
至此就OK了。自己编的时候,还是建议先做asp部分(服务端),最后做RMXP部分(客户端),这样比较简单。偶做的时候先从RMXP入手了,结果浪费了不少时间 - -。当然,如果分数只有一个“最终得分”,那么省略不少内容(判断成绩等),简单多了。
同时如果是纯粹的游戏得分排行榜,建议是传递数据的时候,简单加密(任意方法),防止玩家手动输入内容。至于答题类的则没有这个问题。
坚持看到这一行的不容易了。这个显然不是简单的插件脚本,用起来可能还要花钱购买虚拟主机的空间,就算有教学指导,恐怕最少得花个3-5个小时才能初步看到一点成果。加油吧。
[本贴由 叶舞枫 于 2007-4-28 13:06:36 进行了编辑]
本帖来自P1论坛作者柳柳,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=17412若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。
页:
[1]