您现在的位置是:首页 > 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>

本文标签:

很赞哦! ()

相关源码

  • (自适应)科技产品设备技术作品pbootcms网站模板带下载和招聘基于PbootCMS内核开发的高端科技企业模板,采用响应式布局技术,适配各类移动终端设备。模板设计聚焦科技行业特性,通过模块化结构实现企业形象展示、技术成果发布与人才招募等核心需求查看源码
  • (响应式)WordPress主题Ripro9.0博客免扩展二开版RiPro9.0是基于RiPro8.9版本深度二开优化的资源付费主题,源码修正,修复原版多处功能异常,确保系统稳定运行。支持虚拟主机环境部署,无需特殊服务器配置。查看源码
  • (自适应手机端)锁锁芯锁具网站pbootcms模板 智能防盗锁网站源码下载本模板基于PbootCMS系统开发,为智能锁具、防盗锁芯及相关安防产品企业设计。采用响应式布局技术,确保在手机、平板和电脑等不同设备上都能获得良好的浏览体验,数据实时同步更新。查看源码
  • 帝国cms7.5自适应作文新闻资讯教育网站模板本模板基于帝国CMS7.5内核开发,为教育机构、培训学校等知识传播单位打造。通过自适应设计确保在手机、平板、电脑等设备上均能获得专业浏览体验查看源码
  • (自适应响应式)双语LED照明灯饰灯具外贸网站pbootcms源码下载模板采用响应式设计,能自动适应手机、平板和电脑等多种设备屏幕,确保用户在不同设备上都能获得良好的浏览体验。同一后台管理,数据实时同步,操作简便高效。查看源码
  • (自适应)五金配件机械加工设备pbootcms模板免费下载这款基于PbootCMS开发的网站模板为五金配件和机械加工行业设计,采用简洁有力的设计风格,突出工业产品的专业性和可靠性。模板结构清晰,功能完善,能够有效展示各类工业产品的技术参数和应用场景。查看源码
分享笔记 (共有 篇笔记)
验证码:

本栏推荐