旅行原文件
/********************************************************************************/
/* Wanderer Board : */
/* ============================== */
/* Version: 2.0.0 -- 07 July 2001 */
/* */
/* --------------------------------------------------- */
/* - 程式版權 (c) 2001 by 旅 行 www.lvxing.net - */
/* - PHPの酷 版權所有 http://phpiscool.yeah.net - */
/* --------------------------------------------------- */
/* */
/* ============================== */
/* 網站地址: phpiscool.yeah.net - www.lvxing.net - wdb.yesky.net */
/********************************************************************************/
/* 版權說明: 本軟體为共享軟體。你可以使用, 放置網站供他人下載。请保留此声明 */
/* */
/* 本人保留對本軟體之更改與訂正之權利, 任何人不得修改本軟體之任一部份(如必 */
/* 須更改請與作者聯絡)。使用者執行本軟體所需之設定或美化外觀所需之更改不在此 */
/* 限。使用者須保留版權說明和著作權申明,不得刪除。 */
/* */
/* 違反著作權法之規定,本人保留法律追訴之權利,逕對使用者控告侵害著作權! */
/********************************************************************************/
* Without DataBase 无须数据库 本论坛基于文本文件(TEXT method)
* 商业用途使用请务必注册 注: 不推荐高要求商业用户使用文本程序
* 最后修改日期: 2001/07/07 目前版本:2.0.0
- 注意:目前你看到的版本是 wdb2 正式版(内核重写后的初版本) 和先前的三个测试版完全不同
- 由于应大家要求发布。时间匆忙,部分功能未做彻底测试,以及由于文本程序本身的局限性。
- 本版本不保证数据的安全性,对因此造成的损失不负责任
* 联系方法:
* Support Forum: http://phpiscool.yeah.net (推荐) / www.lvxing.net (台湾DNS)
* E-mail: phpiscool@163.com
* Oicq: 1181791
----------------------------------------------------------
* WDB 帮助文档列表,请按照下面的名称来查看你所需要的内容 *
----------------------------------------------------------
Readme.txt(本文档): 使用及传播许可协议 (您必须阅读并接受) / 写作目的 / 程式简单介绍
Install.txt: 安装方法和常见问题(包括第一次安装和升级) ----- 安装时请务必仔细阅读!!!!!!!!
features.txt: 功能特性
purchase.txt: 注册原因及事项
news.txt: 最新更新和新闻
lyra.txt(新): 关于 Lyra 和 WDB的前景
另外:为了照顾一部分提出要求的朋友,我加写了 LeoBoard 的帖子/用户转换程序,在extra.zip内
注: NT$ 为 新台币 / RMB 为人民币
--------------------------------
* WandererBoard 使用/传播许可 *
* 使用协议以及付费信息 *
--------------------------------
个人/商业使用 - NT$0.00 / RMB0.00 (---免费---)
- 此种情况下您不得修改程序的任意部分,除了必要的界面美化。
- 如果可能,请在您的网站做上WDB站点的链接。谢谢!(程序本身没有带任何图片宣传)
- 使用者須保留版權說明和著作權申明,不得刪除。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
个人注册使用 - NT$800~2000 / RMB100~250 (自愿注册)
- 此种情况使用浮动价格,您可以去除版权信息/图标在您可以接受的价格。
- 主要是如果您觉得这个程序对您学习或者网站建设有帮助,象征性注册
商业注册使用 - NT$4000 / RMB800 (完整注册)
- 注意:大型商业使用不推荐文本程式。
注册用户 可以获得
- 本论坛免费升级 以及 日后转入SQL项目的数据转换借口
- 完整技术支持,负责帮助安装调试,以及日后问题解决
- 无效退款
关于更多注册信息请看 purchase.txt
传播协议:
你可以通过 modem, network, BBS, Internet,和其他存储介质 (如 磁盘/光盘 )
免费传播本程序,但必须遵守以下条约:
1) 你必须是非赢利性质。你不得从中谋取利益。
2) 你没有修改任何本软体任何部分
3) 你必须保证本软件包的完整性
本协议受新加坡法律保护
--------------------------------
* WandererBoard 写作目的/介绍 *
--------------------------------
我从小学开始对计算机编程产生兴趣。但是到99年底才发现网路编程这个广阔天空。
于是凭借以前的基础,很快的自学了Perl的基础。但是很快我发现很多 Senior 使
用了 Linux + PHP 这个黄金搭配。经过学习,我发现 PHP 在很多方面确实有无可
比拟的优势,尤其是在和日渐落伍的Perl比较时。既而我寻找了许多脚本研究,发
现PHP + MySQL的速度确实非常好,但是在中小规模应用时,很多朋友苦于不了解SQL
或者没有SQL空间(大部分的免费空间如此)。于是我产生了编写一个快速的PHP + 文本
的forum的想法。
其实同期确实有LeoBoard和BBS3000这样的东西已经有了很大影响。但是我是在寻找一
些不同。首先我使用PHP语言,确定了更快的基础。然后当我回想过去,我力求代码的
简洁与算法优良。编程是我的一个爱好,我虽然水平也许还不够,但是希望能做出自己
对华人软体业的一点促进。
目前国内的主流程序主要存在以下问题:
1. 代码效率低下 - (以国内某著名论坛的post.cgi取得下个thread的数码的代码为例)
我无意攻击,我也不知道现在是否还是这个代码,这是2001年5月的版本。
我只对这个片段做个注释说明
$dirtoopen = "$lbdir" . "forum$inforum"; //打开相应的论坛版块的目录
opendir (DIR, "$dirtoopen");
@dirdata = readdir(DIR); //读取所有的文件
closedir (DIR); //关闭目录handle
@sorteddirdata = grep(/.thd.cgi$/,@dirdata); //取得所有主题文件
@newdirdata = sort numerically(@sorteddirdata); //排序
@neworderdirdata = reverse(@newdirdata); //倒序
$highest = $neworderdirdata[0]; //取出最大的数码所在的文件名
$highest =~ s/.thd.cgi$//; //取得最大的数码
$newthreadnumber = $highest + 1; //加1得到此次发表应该的数码
大家可以看到,在发表一个新主题时,虽然代码很短,但是却把整个版块目录的文件全部扫描了一遍并两次排序
假设这个目录有NN多个主题,则速度可想而知。 所以该“论坛看似速度慢,其实是由于JS多”的论点
是否成立,大家考虑
2.代码不规范,属于手工作坊型
比如某国内著名CGI论坛,其程序组件命名令人莫名奇妙,又是 bbs, 又是 bbs1, bbs2,
有cjyh, xiu这种不知何来,还有yhreg这样的中文缩写+英文缩写的,
更糟糕的情况通常出现在中文程序的内部
经常有人自觉写了X万行程序(可称程序团) 非常了不起.
可惜代码真的是一团,变量/函数式命名乱七八糟,和国外的优秀作品一比,相形见绌
升级维护更无从谈起. 通常说的国内程序水平低大多也是源于此
还有更严重的. 仍以国内某著名商业Perl文本论坛为例,价格相当之高,
可惜打开程序,从头到尾竟然找不到 flock 函数的影子.
自我学习网路编程第一课,我就知道了锁定这个概念.实在不懂这个程序怎么保证它的"商业"稳定性
(如果它有什么惊世的概念性突破,另当别论,不过恕我驽钝,没看出来)
3.功能花哨不实用
国人爱好,但是不太符合国际潮流.其实更多的后台设定管理更为重要,VB给了个好的样板.
4.其他如核心概念太陈旧,模块化程度差等等
不能说我就全部克服了这些问题,但是我正在努力尝试.
并想推广发扬这些思想.争取促进华人网路软体达到更高的水准
WDB有什么好处?
我都懒得写了
反正我自己觉得实用的功能都有了,不实用的都没加
说点特别的吧
一,仍然是PHP+文本,非数据库 中实现高效率的代码,没什么,我的个人追求就是这个
^^^^^^^^^^^^
(hehe,原来搞计算机竞赛时留下的爱好)
二,细化的功能设定:我同意,可能后台管理远比我想象的重要,所以,
我把原来的一个管理程序扩展成了近20个程序构成的复杂的管理平台。这也算是向Vbb学习的成果吧
三,我想了很久,用iframe配合JS重写了一些效果,现在例如发贴的页面的数据量已经减少了一半,
而且还有一部分可以cache起来,总体的数据量已经压缩了相当
(如果不是因为速度考虑,我可能还要用GZIP压缩)
四,很特别的: 用户数据/论坛文章数据可以象数据库一样导入/导出,无需 FTP 的使用
五,我要是象xxxx那样把功能都列出来再打水,再三面都写不完了。
只是我猜测这个程序是目前文本最快的和占用系统资源最低的。同时也是充分利用SESSION管理.
遗憾或者说............
没有使用 OO 编程,只为了更快的效率,结果差点把自己玩死
没有使用 Template,下个项目一定不会再犯这个错了
目前的界面设置仍和国内主流类似,定制各种颜色.
--------------------------------------------------------------------------------
天下风云出我辈,一入江湖岁月摧。
鸿图霸业谈笑中,不胜人生一场醉。