phpcms v9 模块开发基本教程。。。。。新手必看
2012-08-14 11:09
381 查看
本教材写的很基础,适合新手看。。高手看见不足也指点下。。我也是刚刚学pc。。。谢谢。。。
如果想看的效果好,建议先看看官方的二次开发说明:我不能上传连接。。悲剧啊 v 9 . help.phpcms.cn/html/dev/[/url]
我这次教材主要是做后台部分如何建立一个独立的新模块,前台调用数据库我就不讲了,跟其他的都一样。。。如果以后有时间,我就再讲下吧。。。
我做的是想建立一个推荐位,差不多就是广告吧。。当然很多方法可以实现。。我写这个关键是想让大家熟悉下,v9的二次开发流程。。。。
我网站有这个切图的幻灯片。。。我要自定义上面的内容,忘了说我的网站是站群。。不然我直接写成静态就可以。。。所以写了下面这个模块,,,下面写的只是基本功能,,,我只发布到这里。。是为了让新手门更能理解。。高手不要见笑。。呵呵。。。
演示网站:[u w w w.qunaerwan.com[/url] (完全是业余网站,做的不专业呵呵。。也没做完。。。才完成10%呵呵。。。。现在主要做了,站群,自己做的景点模型。。等。。。。。看wuhan.qunaerwan.com 大家可以交流下。。。。。)
先建立数据库
--
-- 表的结构 `v9_index`
--
CREATE TABLE `v9_index` (
`id` mediumint(4) NOT NULL auto_increment,
`name` varchar(200) NOT NULL,
`url` varchar(30) NOT NULL,
`img` varchar(60) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=8 ;
复制代码
第一步在模块文件夹建立index目录
第二步因为我只做演示所以很简单,在模块里只建立了一个模板文件,因为这个是后台模操作所以我就不用建立前台模板文件夹
在index控制器里写入以下代码
<?php
defined('IN_PHPCMS') or exit('No permission resources.');
pc_base::load_app_class('admin', 'admin', 0);
class index extends admin {
private $db;
public function __construct() {
$this->db = pc_base::load_model('index_model');
}
/**
* 显示列表
*/
public function init() {
$list = $this->db->listinfo('','id desc');
include $this->admin_tpl('index_list');
}
//创建数据
public function create(){
if(isset($_POST['dosubmit'])){
$sql = "INSERT INTO `v9_index` (`name`,`url`,`img`) VALUES ('".$_POST[name]."','".$_POST[url]."','".$_POST
$this->db->query($sql);
showmessage('添加成功!', '?m=index&c=index&a=init');
}else{
include $this->admin_tpl('index_create');
}
}
//删除数据
public function delete(){
if($_GET['index_id']){
if(is_array($_GET['index_id'])){
$_GET['index_id'] = implode(',', $_GET['index_id']);
$this->db->query("DELETE FROM `v9_index` WHERE `id` in ($_GET[index_id])");
}else{
$this->db->query("DELETE FROM `v9_index` WHERE `id` in ($_GET[index_id])");
}
showmessage('操作成功', '?m=index&c=index&a=init');
}else{
showmessage('参数不正确', '?m=tags&c=tags&a=init');
}
}
}
?>
复制代码
在D:\AppServ\www\phpcms\phpcms\model创建数据模型文件
index_model.class.php
写入以下代码
<?php
defined('IN_PHPCMS') or exit('No permission resources.');
pc_base::load_sys_class('model', '', 0);
class index_model extends model {
public function __construct() {
$this->db_config = pc_base::load_config('database');
$this->db_setting = 'default';
$this->table_name = 'index';
parent::__construct();
}
}
?>
复制代码
现在后台操作:
[img]http://www.qunaerwan.com/uploadfile/2011/0421/04.jpg" border="0" >
在扩展菜单管理 添加菜单。。。我添加了3个
这样在后台管理内容里就多出我创建的推荐
关键是这3个参数。。。这3个参数控制点击这个菜单会执行什么操作
这个 应该很好理解。。。。这个是我点击推荐。会执行index模块index文件的init方法
我上面的init方法就是获取数据和条用模板
模板文件代码:
List:
<?php
defined('IN_ADMIN') or exit('No permission resources.');
include $this->admin_tpl('header','admin');
?>
<div class="pad_10">
<form action="?m=index&c=index&a=create" method="post" name="myform" >
<table cellpadding="2" cellspacing="1" class="table_form" width="100%">
<tr>
<th width="20%">名称:</th>
<td><input type="text" name="name" /></td>
</tr>
<tr>
<th width="20%">url:</th>
<td><input type="text" name="url" /></td>
</tr>
<tr>
<th width="20%">图片:</th>
<td><input type="text" name="img" /></td>
</tr>
<tr>
<th></th>
<td><input type="submit" name="dosubmit" id="dosubmit" value=" <?php echo L('submit')?> "></td>
</tr>
</table>
</form>
</div>
</body>
</html>
复制代码
index_create.tpl.php
<?php
defined('IN_ADMIN') or exit('No permission resources.');
include $this->admin_tpl('header','admin');
?>
<div class="pad_10">
<form action="?m=index&c=index&a=create" method="post" name="myform" >
<table cellpadding="2" cellspacing="1" class="table_form" width="100%">
<tr>
<th width="20%">名称:</th>
<td><input type="text" name="name" /></td>
</tr>
<tr>
<th width="20%">url:</th>
<td><input type="text" name="url" /></td>
</tr>
<tr>
<th width="20%">图片:</th>
<td><input type="text" name="img" /></td>
</tr>
<tr>
<th></th>
<td><input type="submit" name="dosubmit" id="dosubmit" value=" <?php echo L('submit')?> "></td>
</tr>
</table>
</form>
</div>
</body>
</html>
如果想看的效果好,建议先看看官方的二次开发说明:我不能上传连接。。悲剧啊 v 9 . help.phpcms.cn/html/dev/[/url]
我这次教材主要是做后台部分如何建立一个独立的新模块,前台调用数据库我就不讲了,跟其他的都一样。。。如果以后有时间,我就再讲下吧。。。
我做的是想建立一个推荐位,差不多就是广告吧。。当然很多方法可以实现。。我写这个关键是想让大家熟悉下,v9的二次开发流程。。。。
我网站有这个切图的幻灯片。。。我要自定义上面的内容,忘了说我的网站是站群。。不然我直接写成静态就可以。。。所以写了下面这个模块,,,下面写的只是基本功能,,,我只发布到这里。。是为了让新手门更能理解。。高手不要见笑。。呵呵。。。
演示网站:[u w w w.qunaerwan.com[/url] (完全是业余网站,做的不专业呵呵。。也没做完。。。才完成10%呵呵。。。。现在主要做了,站群,自己做的景点模型。。等。。。。。看wuhan.qunaerwan.com 大家可以交流下。。。。。)
先建立数据库
--
-- 表的结构 `v9_index`
--
CREATE TABLE `v9_index` (
`id` mediumint(4) NOT NULL auto_increment,
`name` varchar(200) NOT NULL,
`url` varchar(30) NOT NULL,
`img` varchar(60) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=8 ;
复制代码
第一步在模块文件夹建立index目录
第二步因为我只做演示所以很简单,在模块里只建立了一个模板文件,因为这个是后台模操作所以我就不用建立前台模板文件夹
在index控制器里写入以下代码
<?php
defined('IN_PHPCMS') or exit('No permission resources.');
pc_base::load_app_class('admin', 'admin', 0);
class index extends admin {
private $db;
public function __construct() {
$this->db = pc_base::load_model('index_model');
}
/**
* 显示列表
*/
public function init() {
$list = $this->db->listinfo('','id desc');
include $this->admin_tpl('index_list');
}
//创建数据
public function create(){
if(isset($_POST['dosubmit'])){
$sql = "INSERT INTO `v9_index` (`name`,`url`,`img`) VALUES ('".$_POST[name]."','".$_POST[url]."','".$_POST
$this->db->query($sql);
showmessage('添加成功!', '?m=index&c=index&a=init');
}else{
include $this->admin_tpl('index_create');
}
}
//删除数据
public function delete(){
if($_GET['index_id']){
if(is_array($_GET['index_id'])){
$_GET['index_id'] = implode(',', $_GET['index_id']);
$this->db->query("DELETE FROM `v9_index` WHERE `id` in ($_GET[index_id])");
}else{
$this->db->query("DELETE FROM `v9_index` WHERE `id` in ($_GET[index_id])");
}
showmessage('操作成功', '?m=index&c=index&a=init');
}else{
showmessage('参数不正确', '?m=tags&c=tags&a=init');
}
}
}
?>
复制代码
在D:\AppServ\www\phpcms\phpcms\model创建数据模型文件
index_model.class.php
写入以下代码
<?php
defined('IN_PHPCMS') or exit('No permission resources.');
pc_base::load_sys_class('model', '', 0);
class index_model extends model {
public function __construct() {
$this->db_config = pc_base::load_config('database');
$this->db_setting = 'default';
$this->table_name = 'index';
parent::__construct();
}
}
?>
复制代码
现在后台操作:
[img]http://www.qunaerwan.com/uploadfile/2011/0421/04.jpg" border="0" >
在扩展菜单管理 添加菜单。。。我添加了3个
这样在后台管理内容里就多出我创建的推荐
关键是这3个参数。。。这3个参数控制点击这个菜单会执行什么操作
这个 应该很好理解。。。。这个是我点击推荐。会执行index模块index文件的init方法
我上面的init方法就是获取数据和条用模板
模板文件代码:
List:
<?php
defined('IN_ADMIN') or exit('No permission resources.');
include $this->admin_tpl('header','admin');
?>
<div class="pad_10">
<form action="?m=index&c=index&a=create" method="post" name="myform" >
<table cellpadding="2" cellspacing="1" class="table_form" width="100%">
<tr>
<th width="20%">名称:</th>
<td><input type="text" name="name" /></td>
</tr>
<tr>
<th width="20%">url:</th>
<td><input type="text" name="url" /></td>
</tr>
<tr>
<th width="20%">图片:</th>
<td><input type="text" name="img" /></td>
</tr>
<tr>
<th></th>
<td><input type="submit" name="dosubmit" id="dosubmit" value=" <?php echo L('submit')?> "></td>
</tr>
</table>
</form>
</div>
</body>
</html>
复制代码
index_create.tpl.php
<?php
defined('IN_ADMIN') or exit('No permission resources.');
include $this->admin_tpl('header','admin');
?>
<div class="pad_10">
<form action="?m=index&c=index&a=create" method="post" name="myform" >
<table cellpadding="2" cellspacing="1" class="table_form" width="100%">
<tr>
<th width="20%">名称:</th>
<td><input type="text" name="name" /></td>
</tr>
<tr>
<th width="20%">url:</th>
<td><input type="text" name="url" /></td>
</tr>
<tr>
<th width="20%">图片:</th>
<td><input type="text" name="img" /></td>
</tr>
<tr>
<th></th>
<td><input type="submit" name="dosubmit" id="dosubmit" value=" <?php echo L('submit')?> "></td>
</tr>
</table>
</form>
</div>
</body>
</html>
相关文章推荐
- 新手必看 三星S8500上网设置基本教程
- 新手必看:Photoshop笔刷画笔工具基本使用教程
- Drupal 模块开发基本教程(一)
- Drupal 模块开发基本教程(三)
- iPhone 新手必看 新机激活基本教程
- Drupal&nbsp;模块开发基本教程(一)
- 所有游戏通用的新手引导模块的开发模式教程.
- Drupal 模块开发基本教程(二)
- Drupal&nbsp;模块开发基本教程(二)
- Drupal&nbsp;模块开发基本教程(三)
- 游戏开发入门新手教程1
- Python程序中用csv模块来操作csv文件的基本使用教程
- 嵌入式Linux基础知识3(嵌入式Linux开发入门的6个步骤 新手必看)
- C#程序员的春天之从零开始学习unity3D游戏开发入门教程二(创建项目及基本面板介绍)
- 【Unity3D入门教程】游戏开发利器UGUI的基本使用方法
- 微信公众平台开发教程第20篇-新手解惑40则
- 微信公众平台开发教程第20篇-新手解惑40则
- 安卓Hook系列教程(一):xposed模块开发环境搭建
- Android Studio 模块开发官方教程
- iOS开发,iOS游戏开发必看,最好的教程合集