您现在的位置是:首页 > cms教程 > phpcms教程phpcms教程

Phpcmsv9怎么开发留言板

冰枫2025-05-25phpcms教程已有人查阅

导读一、创建模块存放目录 在/phpcms/modules/下创建一个文件夹gbook用来存放模块,gbook文件下包含三个文件夹,classes(模块类库包)、functions(模块函数类包)

功能比较简单,写写为了记住这个过程。 新建一张数据表xx_gbook,有以下字段
Id int(4) 自增长 非空 Name varchar(255) utf-8 Phone int(20) Address varchar(255) utf-8 Content text(500) utf-8 Inputtime int(12)
一、创建模块存放目录 在/phpcms/modules/下创建一个文件夹gbook用来存放模块,gbook文件下包含三个文件夹,classes(模块类库包)、functions(模块函数类包)、templates(模版包,一般是后台模版)。
二、创建模块控制器类(注意:类名称与控制器文件名必须相同)、数据库模型类 在gbook文件夹下新建文件gbook.php,前台不用权限控制,后台类要有权限控制,所以后台新建类要加载并继承admin,写法 pc_base::load_app_class('admin','admin',0); class gbook extends admin(){} 另外控制器的方法名不要和该类中的方法名一样 数据库模型类,在/phpcms/model/目录下新建gbook_model.class.php文件用来加载xx_gbook表。附上我写的一个小例子
Gbook_model.class.php <?php defined('IN_PHPCMS') or exit('No permission resources.'); pc_base::load_sys_class('model','',0); //加载公用模型类 class gbook_model extends model{ //创建新的数据模型类
public function __construct(){ $this->db_config = pc_base::load_config('database'); //数据库连接 $this->db_setting = 'default'; //连接设置 $this->table_name = 'gbook'; //数据表名 parent::__construct(); } } ?>
Gbook.php <?php defined('IN_PHPCMS') or exit('No permission resources.'); //判断是不是有控制器 pc_base::load_app_class('admin','admin',0); //加载admin类 class gbook extends admin{ //创建新类并继承admin的属性 public function __construct(){ $this->db_gbook = pc_base::load_model('gbook_model'); //加载数据库模型类 } //默认列表显示留言 public function init(){ //分页设置 $page = isset($_GET['page']) && intval($_GET['page']) ? intval($_GET['page']) : 1; //分页条数 $pageSize = 20; //查询语句 $gbookList = $this->db_gbook->listinfo(array(),'inputtime DESC',$page,$pageSize); //模版显示 include $this-> admin_tpl("gbook_list"); } //删除留言 public function del(){ //删除语句 if ($this->db_gbook->delete(array('id'=>$_GET['id']))) { echo 1; }else{ echo ''; } } } ?>
Gbook_list.tpl.php <?php defined('IN_ADMIN') or exit('No permission resources.'); include $this->admin_tpl('header','admin');?> <div class="pad-10"> <div class="explain-col"> <?php echo "管理人员根据浏览者的留言,提取相关的信息。";?> </div> <div class="bk10"></div> <div class="table-list"> <table width="100%"> <thead> </thead> <tbody> <?php if($gbookList):?> //判断是否存在数据,而后循环输出 <?php foreach($gbookList as $gbook):?> <tr> <td><?php echo $gbook['id']?></td> <td><?php echo $gbook['name']?></td> <td align="center"><?php echo date("Y-m-d H:i:s",$gbook['inputtime']);?></td> <td><?php echo $gbook['phone']?></td> <td><?php echo $gbook['address']?></td> <td><?php echo $gbook['content']?></td> <td><a href="javascript:delgbook(<?php echo $gbook['id'];?>)">删除</a></td> </tr> <?php endforeach;?> <?php endif;?> </tbody> </table> <div id="pages"><?php echo $this->db_gbook->pages?></div> </div> </div> <script type="text/javascript"> function delgbook(id){ if(confirm("是否确定删除此留言")){ //ajax.post方法传递id给gbook.php中的del()函数 jQuery.post('?m=gbook&c=gbook&a=del&id=' + id + '&pc_hash=<?php echo $_SESSION['pc_hash']?>',{},function(data){ if(data){ location.reload(); }else{ alert("留言删除失败"); } }); } } jQuery(document).ready(function(){ window.top.$('#display_center_id').css('display','none'); jQuery(".subnav").css('display','none'); }) </script>
三、前台数据添加模块 这里用的是api+ajax的方式实现的,与官方网站给的有些不同,具体参考各人习惯
1、 在/api/目录下创建gbook.php文件,实现前后台数据对接
<?php defined('IN_PHPCMS') or exit('No premission resources.'); pc_base::load_app_class('GbookApi','gbook'); //加载接口类 $methodName = $_GET['act']; echo GbookApi::$methodName(); ?>
2.在/phpcms/modules/gbook/classes/目录下创建GbookApi.class.php文件
<?php //定义API名称 class GbookApi{ public static function gbook_reg(){ $gbookModel = pc_base::load_model("gbook_model"); if($gbookModel -> insert(array('id'=>'','name'=>$_POST['name'],'phone'=>$_POST['phone'],'address'=>$_POST['address'],'content'=>$_POST['content'],'inputtime'=>time()))){ echo '1'; }else{ echo ''; } } } ?>
3、 前台模版/phpcms/templates/default/content/目录下新建文件gbook.html
<script type="text/javascript"> $(function(){ $('#botton_gbook').click(function() { jQuery.post("/api.php?op=gbook&act=gbook_reg",jQuery("#form_gbook").serialize(), function(data) { if (data) { $('.input').attr({ "value" : "" }); $('.input').parent().find(".red").remove(); $('.input').parent().find(".green").remove(); $("#form_gbook").hide(); } else { alert("提问失败"); $('.input').attr({ "value" : "" }); $('.input').parent().find(".red").remove(); $('.input').parent().find(".green").remove(); } }); } }) })
</script>
<form id="form_gbook">
<table bordercolor="#F2F2F2" width="100%" cellpadding="0" cellspacing="0" border="1"> <tr> <td align="right" valign="center" width="80px;">姓名:</td>
<td align="left" valign="center">
<input type="text" name="name" id="name" class="required input" />
</td>
</tr>
<tr>
<td align="right" valign="center" width="80px;">电话:</td>
<td align="left" valign="center"> <input type="text" name="phone" id="phone" class="input" /></td> 
</tr>
<tr><td align="right" valign="center" width="80px;">地址:</td>
<td align="left" valign="center"> <input type="text" name="address" id="address" class="input" /> </td>
</tr>
<tr> <td align="right" valign="top" width="80px"></td> <td align="left" valign="top"> <textarea name="content" id="content" cols="50" rows="5" class="required input"></textarea> </td> </tr>
<tr>
<td colspan="2" align="center" valign="center"> <input type="button" value="提交" id="botton_gbook" onclick="return checkform_gbook();" /><input type="reset" value="重填" />
</td>
</tr>
</table>
</form>

本文标签:

很赞哦! ()

相关源码

  • (自适应响应式)黑色LED显示屏户外广告屏网站源码下载这是一款基于PbootCMS内核开发的响应式网站模板,专门为LED显示屏及户外广告行业打造。模板适配各类显示设备,帮助企业快速搭建专业官网,展示产品与服务优势,有效提升品牌形象。查看源码
  • (PC+WAP)五金机械设备营销型模板下载带在线留言为机械设备制造商设计的营销型模板,集成产品参数对比系统、产品展示模块和询价管理功能。采用PbootCMS开发内核,PHP7+运行环境。手工编写语义化HTML5结构,CSS3动画优化交互体验。查看源码
  • (自适应响应式)法律咨询律师事务所法务pbootcms源码下载为律师事务所、法律咨询机构设计,特别适合展示法律服务、律师团队和成功案例。采用响应式技术,确保在不同设备上都能提供专业的法律信息展示和咨询服务。查看源码
  • 帝国CMS7.5H5小游戏模板游戏攻略下载网整站源码本模板基于帝国CMS系统开发,为H5小游戏和APP应用资讯类网站设计。模板架构针对小游戏行业特点优化,支持游戏发布、资讯分享、应用推荐等功能,满足各类小游戏门户网站的建设需求。查看源码
  • (自适应)双语网络电子摄像头设备pbootcms网站模板下载核心功能定位:基于PbootCMS开发的双语摄像头企业官网模板,深度适配产品规格书展示、实时监控演示、解决方案呈现等业务场景,支持中英文内容一键切换。查看源码
  • (自适应)简繁双语响应式服装服饰西装工装校服定制pbootcms模板本模板基于PbootCMS内核开发,为服装服饰行业量身打造,尤其适合西装定制、工装生产、校服订制等服装类企业使用。模板采用响应式布局设计,确保在手机、平板、电脑查看源码
分享笔记 (共有 篇笔记)
验证码:

本栏推荐