=================================================================

•在 phpcms/modules 目录下创建文件夹,并将其命名为guestbook

classes  为模块类库包
functions 为模块函数库包
templates 为模块模板包 这里通常放置含有权限控制的控制器模板,也就是后台模板。
Install
Uninstall
Index.php
Guestbook.php
如果您的模块有单独的前台模版,你需要在phpcms/templates/default下创建一个您的模块同名目录来放置前台模板,“default”为你的风格包名称,我们默认适用default。
 --------------------------------------------------------------------------------------------
•添加外链栏目,指向记事本的控制器
•添加add.html模板,添加留言
•显示留言以及回复
 --------------------------------------------------------------------------------------------
•Config.inc.php

<?php
defined('IN_PHPCMS') or exit('Access Denied');
defined('INSTALL') or exit('Access Denied');
$module = 'guestbook';
$modulename = '留言板';
$introduce = '留言模块';
$author = '个人团队';
$authorsite = 'http://www.phpcms.cn';
$authoremail = '';

?>

 ---------------------------------------------------------------------------------------------
路径:phpcms/modules/guestbook/install/extention.inc.php

<?php
//是否在后台主导航条上
$guestbook=$menu_db->get_one(array('name'=>'guestbook','parentid'=>'0'));
if($guestbook)
{
$parentid=$guestbook['id'];
}
else
{
$parentid=$menu_db->insert(
array(
'name'=>'a1',
'parentid'=>0,
'm'=>'guestbook',
'c'=>'index',
'a'=>'init',
'data'=>'',
'listorder'=>'10',
'display'=>'1'
),true);
}

//左侧主菜单
$id=$menu_db->insert(
array(
'name'=>'a2',
'parentid'=>$parentid,
'm'=>'guestbook',
'c'=>'guestbook',
'a'=>'init',
'data'=>'',
'listorder'=>'1',
'display'=>'1'
),true);
//左侧菜单项
$idd=$menu_db->insert(
array(
'name'=>'a3',
'parentid'=>$id,
'm'=>'guestbook',
'c'=>'guestbook',
'a'=>'guestbook_list',
'data'=>'',
'listorder'=>'1',
'display'=>'1'
),true);

$language =array(
'a1'=>'留言板',
'a2'=>'留言板',
'a3'=>'留言列表'
);

?>

 -----------------------------------------------------------
添加模块module.sql
 
路径:phpcms/modules/guestbook/install/module.php
 

INSERT INTO `phpcms_module` VALUES ('guestbook', '留言板', '', '0', '1.0', '', 'array (\n 1 => \n array (\n \'is_post\' => \'1\',\n \'enablecheckcode\' => \'0\',\n ),\n)', '0', '0', '2010-09-06', '2010-09-06');

----------------------------------------------------------------------------------------
建表guestbook.sql
路径:phpcms/modules/guestbook/install/guestbook.sql
 
DROP TABLE IF EXISTS `v9_guestbook`;
CREATE TABLE `v9_guestbook` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,

`title` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,

`content` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,

`author` VARCHAR( 100 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,

`cellphone` VARCHAR( 15 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,

`qq` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,

`email` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,

`msn` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,

`addtime` INT NULL ,

`ip` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,

`reply_admin` VARCHAR( 200 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,

`reply_content` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,

`reply_time` INT NULL ,

`status` INT NULL DEFAULT '-1')
 ENGINE = MYISAM ;
 
insert into v9_guestbook(title,content,author,cellphone) values
('ss','tt','admin','122'),
('jjj','hh','admin','120'),
('ggg','nnnn','admin','133');
 -----------------------------------------------------------------------
Uninstall卸载
 
路径:phpcms/modules/guestbook/uninstall
•model.php
•extension.inc.php
•guestbook.sql
 
--------------------------------------------------------------------------
后台控制器guestbook.php
路径:phpcms/modules/guestbook/guestbook.php

<?php
defined('IN_PHPCMS') or exit('No permission resources.');
pc_base::load_app_class('admin','admin',0);
class guestbook extends admin {
function __construct() {
parent::__construct();
$this->db = pc_base::load_model('guestbook_model');
}
public function guestbook_list()
{
$infos=$this->db->select();
include $this->admin_tpl('guestbook_list');
}
public function guestbook_edit()
{
}
public functionguestbook_del()
{
}
}

?>

------------------------------------------------------------------

后台模板guestbook_list.tpl.php
路径:phpcms/modules/guestbook/
•include $this->admin_tpl('header', 'admin');
-----------------------------------------------------------------
搜索部分

<form name="searchform" action="" method="get" >
<input type="hidden" value='guestbook' name="m">
<input type="hidden" value='guestbook' name="c">
<input type="hidden" value='guestbook_list'name="a">
<table width="100%" cellspacing="0" class="search-form">
<tbody>
<tr>
<td>
<div class="explain-col">
标题:<input name="title" type="text" value="<?php if(isset($_GET['title'])) {echo $_GET['title'];}?>" class="input-text" />
姓名:<input name="author" type="text" value="<?php if(isset($_GET['author'])) {echo $_GET['author'];}?>" class="input-text" />
手机:<input name="cellphone" type="text" value="<?php if(isset($_GET['cellphone'])) {echo $_GET['cellphone'];}?>" class="input-text" />
QQ:<input name="qq" type="text" value="<?php if(isset($_GET['qq'])) {echo $_GET['qq'];}?>" class="input-text" />
<input type="submit" name="search" class="button" value="<?php echo L('search')?>" />
</div>
</td>
</tr>
</tbody>
</table>

 ---------------------------------------------------
guestbook/install/model.php

<?php
defined('IN_PHPCMS') or exit('Access Denied');
defined('INSTALL') or exit('Access Denied');
return array('guestbook');
?>

 
 
------------------------------
 
 

邓_phpcms_二次开发_留言板的更多相关文章

  1. 邓_phpcms_二次开发_创建插件

    Phpcms_V9           [test]测试 ================================================================ ====== ...

  2. PHPCMS V9 模块开发 二次开发实例 留言本

    鄙人实现了PHPCMS V9 产品开发权威指南(2011官方最新版).doc中的留言板实例,并加上模块安装和卸载功能, 程序可以运行,但只实现基本功能,目的是想让和我一样徘徊在PHPCMS门口不知道从 ...

  3. node.js小案例_留言板

    一.前言 通过这个案例复习: 1.node.js中模板引擎的使用 2.node.js中的页面跳转和重定向 二.主要内容 1.案列演示:  2.案列源码:https://github.com/45612 ...

  4. PHPCMS v9 二次开发_验证码结合Session开发

    本文主要讲解了在V9中使用v9自带验证码并且需要使用session的情况下,多种问题的解决.:).如有问题或者更好的解决办法,希望不吝赐教. 1.前端调用验证码 pc_base::load_sys_c ...

  5. Navsion二次开发_学习笔记

    CodeUnit Note   This feature is documented in the Navision Application Server Technical White Paper. ...

  6. Revit二次开发_快速显示隐藏剖面框

    最近遇到一种状况需要经常切换剖面框的可见性,于是想将剖面框的显示与隐藏做成一个按钮,方便切换. 其他类似元素想做成快速切换可见性应该可以使用类似做法. 这次的隐藏对象是剖面框,所以我直接就隐藏元素了. ...

  7. 分享使用PHP开发留言板

    首先我不是一名开发人员,只是一名小小的运维工程师,PHP是我自己喜欢的一门开发语言,所以我偶尔也会敲一些代码,写一些案例.今天我给大家分享的是使用PHP开发的留言板,留言板功能不全所以请大家见谅,也不 ...

  8. Web开发从零单排之二:在自制电子请帖中添加留言板功能,SAE+PHP+MySql

    在上一篇博客中介绍怎样在SAE平台搭建一个html5的电子请帖网站,收到很多反馈,也有很多人送上婚礼的祝福,十分感谢! web开发从零学起,记录自己学习过程,各种前端大神们可以绕道不要围观啦 大婚将至 ...

  9. 邓_ Phpcms·二次开发

    PHPCMS V9产品介绍 PHPCMS V9(简称V9)采用PHP5+MYSQL做为技术基础进行开发.V9采用OOP(面向对象)方式进行基础运行框架搭建.模块化开发方式做为功能开发形式.框架易于功能 ...

随机推荐

  1. AJAX结合PHP整理复习

    Ajax主要的功能是实现了浏览器端 异步 访问服务器:通过浏览器的XMLHttpRequest对象发出小部分数据,与服务端进行交互,服务端返回小部分数据,然后更新客户端的部分页面. 下图是一次请求成功 ...

  2. Xamarin调用JSON.net来解析JSON

      https://www.cnblogs.com/zjoch/p/4458516.html   再来我们要怎么解析JSON格示呢?在.net 中,我们很孰悉的JSON.net,没错,我们依然可以在X ...

  3. 去除测序reads中的接头:adaptor

    之前用c写过一个程序,查找reads中是否包含了adaptor,如果检测到的话就过滤掉含有adaptor的reads,这次在过滤完数据之后发现接头序列比较多,为了提升组装效果,又不能很大地影响数据量, ...

  4. android之monkey测试

    本文同时发表于本人个人网站 www.yaoxiaowen.com monkey测试算是android自动化测试当中最简单的一种工具了.虽然简单,不过对于测试app的稳定健壮,减少崩溃还是比较有用的.所 ...

  5. Vue 爬坑之路(九)—— 用正确的姿势封装组件

    迄今为止做的最大的 Vue 项目终于提交测试,天天加班的日子终于告一段落... 在开发过程中,结合 Vue 组件化的特性,开发通用组件是很基础且重要的工作 通用组件必须具备高性能.低耦合的特性 为了满 ...

  6. Wechat 微信端调用“微信支付接口”的正确方式

    微信端的项目中,比如微信商城之类的,肯定会涉及到微信支付这一块: 下面直接上详细的代码: var data = {--}; // 调用微信支付需要的数据 function onBridgeReady( ...

  7. 关于Bitcoin的分叉之路

    今年对与bitcoin来讲是不平凡的一年,它经历了价格的暴涨.腰斩和再次暴涨,对于这些现象背后的利益博弈网上分析的文章很多,我就不再赘述了.我们从技术的角度上分析一下bitcoin的发展历程,同时预测 ...

  8. Google mobile test

    1. 现已更新至3.0+版本: 2. 应对版本频繁的迭代更新,进行[版本监控.持续更新.反馈,开发的单元测试] 1. 多关注金字塔的底层: 2. [集成测试, Espresso, EarlGrey] ...

  9. Python模块学习------ 正则表达式

    import re #f = open('data.txt','r') #for eachline in f.readlines(): #print re.split('\s\s+', eachlin ...

  10. JavaScript(二)基本概念

    JS区分大小写 html/css 中 标签选择器不区分大小写 id class 选择器区分大小写 其中属性名 属性名 属性值  不区分大小写 行间事件  onclick  等  不区分大小写 而  执 ...