|
开发手册 |
1.为什么要开发插件?
一个论坛程序想要包含每个人需要的所有功能,是不可能的,如果想让论坛有特色,就需要不同的插件。
2.我能开发插件吗?
只要你具备 PHP/HTML
基础知识,再结合下面的说明,就一定行。
3.开发插件必备知识
(1)前台必备代码
在开发插件之前,你需要在 PHP
文件的顶端输入下列代码,以便获得通用的风格、变量、函数等。
<?
require("datafile/config.php");
require("getskin.php");
include("header.php");
include("datafile/usertitle.php");
在文件的结尾还需要加入下列代码:
include("footer.php");
?>
(2)后台必备代码
一般插件是不需要后台的,如果你想让插件具有友好管理界面,最好还是设计后台。
必须要注意的是,为了安全性,您必须在 PHP
文件顶端加入下列代码:
require_once("adminglobal.php");
介绍几个后台通用的颜色:#0041BD
#F9FAFE
#0041BD
(3)前台通用函数/变量
$username 当前用户名
$useri=get_user_info($username);
用户完整信息
$userlevel=getUserLevel($useri[15],$username);
用户级别
$usericon=get_user_portait($useri[2]);
用户图标(HTML)
$regdate=get_date($useri[5]);
注册日期
$userwww=floor($useri[15]/10);
威望
$useri[19] 用户金钱数
(4)示例函数
function
domoney($duser,$amount)
{//金钱操作函数 by
Bob Shen
global
$id_unique;
if
(!file_exists("$id_unique/".urlencode($duser)))
{
msg_box("发生错误","指定的用户不存在!如有问题,请联系管理员!<br><ul><li><a
href=gobang.php>返回五子棋</a></li></ul>");
require("footer.php");
exit;
}
$userii=get_user_info($duser);
$userii[19]=$userii[19]+$amount;
$tmp=implode('|',$userii);
writetofile("$id_unique/".urlencode($duser),$tmp);
}
function
sendamessage($duser,$messdatatx,$duserse,$messdatati)
{//发送短消息函数
//$duser 发送到
$mseedatatx
消息内容
$duserse 发送者
$messdatati
消息标题
global
$id_unique;
if
(file_exists($id_unique."/".urlencode($duser).".rec"))
$msg=file($id_unique."/".urlencode($duser).".rec");
else
$msg[0]="";
$new=$duserse."|".$messdatati."|".$timestamp."|".$messdatatx."|0|\n";
$oldcount=count($msg);
$old=implode("",$msg);
writetofile($id_unique."/".urlencode($duser).".rec",$new.$old);
}
|
|
4.编码注意
开发插件强烈建议使用
EmEditor,因为这是我们找到的唯一可以保存不含BOM标记
的UTF-8文件的编辑器,保存时一定要注意选择另存为,并按下图设置编码选项
另外,对于可能非英文文件名的读写变量,请使用
urlencode($变量名称) 函数。
文档编写:yutingpc(snlmgyt)
版权所有(C) 2004 BMForum 插件开发组
欢迎加入 BMForum 插件开发组 |
|
|