Arsue程序的进展(7)

王志勇 发表于 2012年04月28日 13:06

写《Arsue程序的进展》的文字是便于朋友们了解这个程序的进度,程序的发布已经接近尾声了。用了3天多的全天工作日的时间,编写全新的留言板程序。即将发布的Arsue程序,含有留言板程序、信息反馈程序,这2个程序是附送的,与Blog程序无关。如果把我原来编写的留言板程序移植过来,会比较容易。但那个留言板程序没有真正的回复功能,现在需要开发回复功能,至少要有“版主回复”的功能。

增加了留言板的回复功能,程序一下子就复杂很多了。它的相关程序主要有:留言板页面、回复页面、新留言执行程序、回帖执行程序、主帖审核页面、回复审核页面、主帖审核执行程序、回复审核执行程序、未审核主帖的编辑页面和程序、已审核主帖的编辑页面和程序、未审核回复的编辑页面和程序、已审核回复的编辑页面和程序、删除未审核的留言主帖、删除已审核的留言主帖、删除未审核的回帖、删除已审核的留言回帖、清空审核中的所有主帖(对付spam)、清空审核中的所有回复(对付spam)。

从上面的名称看来,共有19个,实际可能还有一些,我暂时记不起来,难以想象它的工作量有多大。这些程序都是我一针一线写起来的,每一部分都需要精神高度集中地编写和测试。上面的19种功能,都是这3天新写的。因为数据结构与我近几年写的新的留言板程序有所不同了,特别是增加了回帖功能。2009年我开发的讨论组程序,与这个留言板程序很类似,也有回复功能,但不同的是:原来的讨论组是需要登录才可以访问;现在的这个Arsue留言板用采审核功能,并且在用户留言后会获得了一个Cookie,获得Cookie之后的用户,就可以看到正在审核中的留言。在Arsue留言板页面中,每个主帖如果有审核中的回复,都可以看到“正在审核中的回复”,这样就可以在线交流。为什么都要采用审核的方式?请见《Arsue程序的进展(3)》第3段最后面的文字。

经过这一次的新开发,Arsue留言板已经是一个数据处理功能很强大,容量很大的新的留言板程序了。留言板的主页面,是采用打开2个数据表的方式,它的翻页程序十分复杂;而只有一个单数据表的翻页程序,则很简单。多个数据表的翻页程序,需要列很多的数据,例如第1页是显示哪些数据,第2页、第3页、第4页、第5页是显示哪些数据,把这些数据的ID都列出来,从中找出规律,当时用了很多的时间。几年前我列过这样的数据,当时成功了,这里暂称为翻页程序A。可是没有记录当时的思路,后来又觉得那个翻页程序A有些繁琐。前两年想重新列数据,想用清晰简单的思路,重新写这个多数据表的翻页程序,也是花了很多时间,经过很多次的试验,写出了翻页程序B,但还是失败了,运行中会出错。

于是这几年一直在沿用以前写的翻页程序A,但是我已经完全不记得此程序的思路,程序看起来又繁琐。昨天翻页程序A终于在这个Arsue留言板程序中出错了,检查起来很麻烦,于是昨晚决定再重新写一个多个数据表的翻页程序。今天用了一上午的时间,终于完成了翻页程序C,能够正常运行,这个新的多数据表的翻页程序看来更简单清晰。

这个Arsue留言板程序的路径目前是采用2种方式同时兼容的模式,例如http://www.abc.com/def/messages/与http://www.abc.com/messages/。看起来区别不大,可是当没有编写兼容的语句的时候,把程序换个目录,对这个程序而言,是不能运行的;并且与之相关的很多超链接都需要在程序中使其自动改变才能实现兼容模式。第一种模式,是为多版块的留言板做了预留,也就是当想再添加一个留言板的时候。前些天没有考虑到还需要第3种模式,其实挺重要的,就是把一个留言板单独放到一个二级域名例如http://messages.abc.com,或者三级域名例如http://messages.cn.abc.com,子域名的首页就是一个留言板,这个留言板的ID值是messages。

因为前2种模式与博客是放在同一站点内,所以需要在一定程度上淡化这个留言板,留言板的回复数做了限制,以免数据过大,默认为每个主帖最多9条回复,这个值可在留言板管理后台设置,允许10~20条。而如果大家喜欢采用第3种模式,那就更好了,使留言板与博客各自独立,拆分的结果是更好地提高性能。这个Arsue留言板程序与我在2009年开发的讨论组程序,2011年开发的“幸运同在”项目,结构是大致相似的。

6条评论:
1   abc 2012-04-28 22:52
好。有留言本和反馈是最好了。不过如果单单是为了节约数据库,来让回复的数量多少有限制。这样是不是不好哦,嘿嘿。想多让人家留言哦、
2   abc 2012-04-28 22:52
辛苦了,勇哥,感激不尽。
3   自由勇 2012-04-28 22:58
谢谢。:)我考虑一下,也可以取消这个回复数的限制。
4   abc 2012-04-29 17:12
是的哦,因为随着信息化进程加快,数据库容量在所难免,就比如手机内存卡一样,从最初的128到现在32G,这可以说是一种进步,使用功能越来越多。我们任何设计产品,其实都是以功能为最大的荣耀。如果因为数据库限制功能,我觉得还是放开权限,因为有了审核机制,我们就不怕恶意灌水的坏家伙。
大家用您的程序,都觉得好。好就在于功能都能完美达到,而且简洁并节约成本,我觉得这就是真正意义上的性价比。
5   自由勇 2012-04-29 17:20
谢谢,已经解除留言板每个主帖的回复数量限制。届时用户也可以在留言板的管理页面设置回复数量的限制,默认为无限制。
6   abc 2012-04-30 11:59
不客气,但愿过多的建议你莫嫌弃,哈哈。因为不专业,所以要体谅。

发表评论:
名字: (*必填)
博客: (可省)

正文:

  记住信息?

直接发送Trackback到此文章

说明:本评论系统不支持HTML代码。(您的留言需要审核,审核规则请见这里。)

王志勇:1980-09-26 (38周岁)
程序设计,前端设计。

版权声明:本博客所有文章,均符合原创的定义,禁止转载,违者将必究;正确的方法是贴原文的标题和网址即可。

与此相关的链接
自由勇专栏

Blog存档 Archives

2018年11月
2018年10月(30)
2018年09月(17)
2016年-2017年(9)
2014年06月-09月(10)
2013年 +

2012年 +
2011年 +
2010年 +
2009年 +
2008年 +
2007年 +
2006年 +
2005年09月(4)

Copyright © 2006-2018 auiou.com All rights reserved.
此Blog程序由王志勇编写 已经发布在Arsue