权当作是对五一节的献礼吧。。。。
这是一个php4 for Firebird 0.99 alpha 的版本,你可以从
ftp://ftp.lib.pku.edu.cn/incoming/NewSoftware_incoming/php4bbs/php4fb.zip
ftp://ftp.lib.pku.edu.cn/incoming/NewSoftware_incoming/php4fb/php4fb.zip
获得这个软件。
基本上是参照bbs2www 1.34
改写的。bbs2www可以通过访问从CAS的Web站点取得。地址是:
http://cas.tsx.org/。
bbs2www的版权归CAS所有。
本软件没有任何版权,你可以随便拷贝、使用、散发。作者并不准备为此带来的任何
问题负责任。但是,你可能需要遵照GPL,所以把GPL放在了最后。
很早以前做的一个东东,由于一直没有时间,所以也没有写好,但是却不甘心
就这么浪费了,所以就POST出来,希望能对一些同好有所帮助、借鉴。
由于很长时间没有动了,也不知道这些代码能不能用?不过想那个时候一直在
调试,也许是朝着正确的方向修改吧。
这个版本除了支持bbs2www 1.34的功能之外,还加入了www login的东东,这也
是想采用php来编写www for Firebird的原因之一。
所需要的软件:
PHP4.0以上的源代码
MySQL
PHPLIB 7.2以上
Apache 1.3.12以上(源代码)
注:在安装前,你一定要确信你的上述软件都能够在系统上正确运行的。
注:安装过程可能极其繁琐,因为没有相应的install过程,全部是手工制作。。
安装步骤:
由于一些原因(主要是在php里面对记录、指针等操作极其不方便),把一些动作
加入到php4里面去了。就是说,修改了php4的源代码,使得php4有支持Firebird
的一些模块。由于Firebird有使用共享内存,所以为了从php里面访问这些共享内
存,增加了bbs for php4的模块。(php4语言里面对共享内存的定义、操作与一
般的共享内存定义操作太不相同了)
由于是第一次针对php4增加模块功能,所以很多地方很不适应,大家看了程序,不
要笑得太大声啊。。。呵呵
对bbs for php4模块的编译,请仔细阅读php4的如何增加一个模块的说明先。。。。
大致步骤就是首先用php4提供的一个脚本文件生成一个bbs模块框架,然后将/bbs目
录中的bbs.c、bbs_error.h、php_bbs.h、config.m4以及/bbs/fb目录拷贝过去,覆
盖掉原来的bbs.c和php_bbs.h、config.m4文件,然后到php4的home下面更新一下它
的configure,最后configure --with-bbs,make。。。
如果一切顺利的话,你可以在phpinfo()中看到bbs支持的。否则的话,就检查一下
config.m4,并确定已经更新了php4的configure程序。
编译好php4之后,最好把它和你的apache编译到一块,如果你在apache中是用模块
方式调用php4的,应当也没有什么问题,不过我没有试过。
你一定要安装MySQL和PHPLIB的,否则的话,所有程序都不会运行。
安装好MySQL之后,运行/FILES下面的create_database.mysql文件,就是在你的数据
库中创建一些表:
mysql -h host database_name <create_database.mysql
这个database_name一定要和你的phplib中的配置文件中定义的database名字要一样,
比如都叫做mybbs吧。
然后把/FILES目录下面的文件拷贝到你的apache能够访问的地方,在浏览器中看
index.php,如果可以的话,就能够看到初始页面了。。。哦,你一定得首先启动你
的Firebird bbs,并用一个用户进去逛一圈,确保所有的共享内存都已经建立了。。。
这个版本是可以确认用户身份,然后根据用户身份(SYSOP、版主、普通用户、GUEST)
来显示相应的功能、板面。。。
不过由于时间的缘故,原来bbs2www 1.34中的bbssnd功能还没有php化,也就是说,
现在你只能够看看版面什么的,还不能发表文章,。。。。。:((
不过修改成bbssnd.php应当不会太困难,所需的操作基本上都可以在bbs for php
模块中找到的。附上了bbssnd.c,可以对比修改。
如果有什么问题,可以给我写信的:marsgod@263.net
我爱完全自由的软件,仅仅因为她是完全自由的。。。
2001/05/01
GNU GENERAL PUBLIC LICENSE
--
FROM 61.150.153.129