Chinaunix首页 | 论坛 | 博客
  • 博客访问: 116946
  • 博文数量: 42
  • 博客积分: 2100
  • 博客等级: 大尉
  • 技术积分: 481
  • 用 户 组: 普通用户
  • 注册时间: 2006-09-25 21:27
文章分类

全部博文(42)

文章存档

2011年(4)

2009年(3)

2008年(9)

2007年(22)

2006年(4)

我的朋友

分类:

2007-06-27 10:58:46

                   Xoops 开发学习笔记

1.在block中写程序
2.Xoops modules模块开发
2.1xoop_version.php设定
该文档是模组的设定文档,管理模组的各种资讯,例如:

2.1.1 通常设定

$modversion['name'] = "我的电话本";                 //模组名称
$modversion['version'] = 0.01;                       //模组版本
$modversion['description'] = "简易的电话本程序";   //模组描述
$modversion['credits'] = "tad";                      //模组著作权人
$modversion['author'] = "tad";                       //模组作者
$modversion['license'] = "GPL see LICENSE";          //模组版权
$modversion['image'] = "images/logo.png";            //模组的logo
$modversion['dirname'] = "my_phonebook";             //模组目录名称
?>

2.1.2 数据库中设定
$modversion['sqlfile']['mysql'] = "sql/mysql.sql";    //数据表的创建信息文件
$modversion['tables'][\0] = "phone";            //表格名称

2.1.3 模组管理界面设定
$modversion['hasAdmin']        = 1;        //是否有管理介面
$modversion['adminindex']    = "admin/index.php";    //管理介面的首页
$modversion['adminmenu']    = "admin/menu.php";    //管理介面的菜单程序

其中管理adminmenu指它是設定當滑鼠移到模組圖示上時,所出現的浮動選單的內容檔為 menu.php。當使用者點選 menu.php 中的選項時,系統會將執行命令傳給 menu.php 中所設定的 $adminmenu[\n]['link'] 位置,而此位置通常就是 $modversion['adminmenu']的所在位置。
如:
$adminmenu[\1]['title'] ="新增電話";
$adminmenu[\1]['link'] = "admin/index.php?op=Add";
$adminmenu[\2]['title'] = "刪除電話";
$adminmenu[\2]['link'] = "admin/index.php?op=Del";
?>

adminindex设定例如:
include '../../../include/cp_header.php';//一定要加,該程式算是一個中介程式,讓您的模組與系統接軌用的,所以相當重要。

//新增一筆電話資料
function add_phone(){
    global $xoopsDB;
    $sql_insert = "insert into ".$xoopsDB->prefix("phone")." (sn,name,tel) values ('$_POST[\sn]','$_POST[\name]','$_POST[\tel]')";
    $xoopsDB->query($sql_insert) or redirect_header($_SERVER['PHP_SELF'], 10,"執行錯誤");
}

//刪除一筆電話資料
function del_phone(){
    global $xoopsDB;
    $sql_delete = "delete from ".$xoopsDB->prefix("phone")." where sn=$_GET[\sn]";
    $xoopsDB->queryF($sql_delete) or redirect_header($_SERVER['PHP_SELF'], 10,"執行錯誤");
}

//電話一覽表
function list_phone(){
    global $xoopsDB;
    $allData="
   

   
   
   
   
   
    ";

    $sql_select="select * from ".$xoopsDB->prefix("phone");
    $result = $xoopsDB->query($sql_select) or redirect_header($_SERVER['PHP_SELF'], 10,"執行錯誤");
    while (list($sn,$name,$tel)=$xoopsDB->fetchRow($result)){
        $allData.="";
    }
    $allData.="

   
$name$tel刪除< /td>
";
    return $allData;
}



switch($_REQUEST['op']){
    case "Add";
    add_phone();
    header("location: ".$_SERVER['PHP_SELF']);
    break;
    
    case "Del";
    del_phone();
    header("location: ".$_SERVER['PHP_SELF']);
    break;

    default:
    $main=list_phone();
    break;
}

xoops_cp_header();
echo "我的電話簿管理介面";
echo $main;
xoops_cp_footer();
?>

2.2 模组的使用者页面,命名为index.php位于模组根目录下

2.2.1一般的index页面
include '../../mainfile.php';
include XOOPS_ROOT_PATH.'/header.php';

$sql_select="select * from ".$xoopsDB->prefix("phone");
$result = $xoopsDB->query($sql_select) or redirect_header($_SERVER['PHP_SELF'], 10,"執行錯誤");
while (list($sn,$name,$tel)=$xoopsDB->fetchRow($result)){
#     $data.="$name : $tel";
}
echo "

我的電話簿

  $data";
include XOOPS_ROOT_PATH.'/footer.php';
?>
2.2.2 带模板设计的index页面
1)需要在下xoops_version中增加
$modversion['templates'][\1]['file'] = 'phone.html';             //模组模板
$modversion['templates'][\1]['description'] = "電話簿的樣版檔";  //模板描述
注意:模板需要放到模块目录的templates文件夹
phone.html如下

<{$lang_title}>


以下是本電話簿目前所收收錄的電話:

<{$show_tel}>
2)使用模板设计的index页面
例如:
include '../../mainfile.php';
$xoopsOption['template_main'] = 'phone.html';
include XOOPS_ROOT_PATH.'/header.php';

$xoopsTpl->assign('lang_title', "我的電話簿");

$sql_select="select * from ".$xoopsDB->prefix("phone");
$result = $xoopsDB->query($sql_select) or redirect_header($_SERVER['PHP_SELF'], 10,"執行錯誤");

while (list($sn,$name,$tel)=$xoopsDB->fetchRow($result)){
#     $data.="$name : $tel";
}

$alldata="$data";

$xoopsTpl->assign('show_tel', $alldata);

include XOOPS_ROOT_PATH.'/footer.php';
?>

2.3 整个模块目录结构
\www\modules\my_phonebook\
 |
 |-\www\modules\my_phonebook\admin\
 |  |-index.php
 |  |-menu.php
 |-\www\modules\my_phonebook\blocks\
 |  |-phone_blocks.php
 |-\www\modules\my_phonebook\images\
 |  |-logo.png
 |-\www\modules\my_phonebook\sql\
 |  |-mysql
 |-\www\modules\my_phonebook\templates\
 |  |-phone.html
 |-index.php
 |-xoops_version.php

2.4.制作完成后,安装模组
您可以將模組上傳,並開始進入管理介面中的模組管理來進行安裝
参考:
  
阅读(1384) | 评论(2) | 转发(1) |
给主人留下些什么吧!~~