这是一个很简单插件实例,通过此插件,你可以知道怎么样开发一个插件,它结构是怎么设置的,数据库,后台等。
文件结构:
enroll.php 文件在 plus文件下
enroll.htm文件在templets/plus 文件夹下
adenroll.php 文件在dede文件夹下
adenroll.html 文件dede/templet文件夹下
sql 文件:
CREATE TABLE IF NOT EXISTS `dede_enroll` (
`id` int(4) NOT NULL auto_increment,
`name` varchar(20) NOT NULL,
`mail` varchar(30) NOT NULL,
`tag` tinyint(1) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
INSERT INTO `dede_plus` (`aid`, `plusname`, `menustring`, `mainurl`, `writer`, `isshow`, `filelist`) VALUES
(30, '网上报名', '<m:item name=''网上报名'' link=''adenroll.php'' rank=''plus_网上报名'' target=''main'' />', '', 'g1000', 1, '');
这里说明下 为了方便 我简单的设置了 两个字段 姓名和邮箱 tag字段是标示是否录取 1为录取
第一个insert语句是添加到后台管理
第二个insert语句是添加到前台导航栏
enroll.php
复制代码
<?php
//*******要先包含common.inc.php 然后 session_start(); 否则取不到session的值
//*******因为common.inc.php 有关于session路径的配置
include_once dirname(__FILE__).'./../include/common.inc.php';//包含配置文件
session_start();
require_once DEDEINC."/arc.partview.class.php";//包含partiew类
//*****实例化 这个类的作用是得到头部导航栏和尾部信息 若不需要可以使用dedetemplate.class.php 这个类
$pv = new PartView();
if($_POST){
if( CheckEmail($_POST['mail'])==false){//验证邮箱 方法在common.func.php 公用函数
ShowMsg('邮箱格式错误','-1');
exit();
}
if($_POST['name']==""){
ShowMsg('用户名不能为空','-1');
exit();
}else{
$name=htmlspecialchars($_POST['name']);
}
if($_SESSION['dd_ckstr']!=strtolower($_POST['validation'])){//验证 验证码 必须转换成小写
ShowMsg('验证码错误',-1);
exit();
}
$sql="insert into `cms_enroll`(name,mail) values('$name','$_POST[mail]')";
//********$db可直接使用 系统自动实例化了dedesql.class.php
$affected = $db->ExecuteNoneQuery2($sql);//执行一条语句 返回影响值
if($affected){
ShowMsg('报名成功',-1);
}
}else{
$pv->SetTemplet(DEDETEMPLATE.'/plus/enroll.htm');//设置模板
$pv->Display();//显示页面
}
?>
enroll.htm
复制代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head>
<title>{dede:global.cfg_webname/}-在线报名</title>
<link href="{dede:global.cfg_templeturl/}/style/dedecms.css" rel="stylesheet" media="screen" type="text/css" />
</script>
</head>
<body>
{dede:include filename="../default/head.htm"/}<!-- 包含头部 -->
<blockquote style="margin:50px auto" >
<form method="post" action="">
姓 名:<input type="text" size=30 name="name" /><br /><br />
邮 箱:<input type="text" size=30 name="mail" /><br /><br />
<!--vdimgck.php 是验证码-->
验证码:<input type="text" name="validation" /><img src="../../include/vdimgck.php" /><br /><br />
<input name="encoll" type="submit" value="报名" /><br />
</form>
</blockquote>
{dede:include filename="../default/footer.htm"/}<!-- 包含尾部 -->
</body>
</html>
adenroll.php
复制代码
<?php
require_once(dirname(__FILE__).'/config.php');//后台配置文件 检查登陆 配置信息
require_once(DEDEINC."/datalistcp.class.php");//包含分页类
if($_GET['action']&&$_GET['id']){
if($_GET['action']=='pass'){//各种操作
$db->ExecuteNoneQuery("update cms_enroll set `tag`=1 where id='$_GET[id]'");
ShowMsg('录取成功','adenroll.php');
}
if($_GET['action']=='nopass'){
$db->ExecuteNoneQuery("update cms_enroll set `tag`=0 where id='$_GET[id]'");
ShowMsg('取消录取','adenroll.php');
}
if($_GET['action']=='delete'){
$db->ExecuteNoneQuery("delete from cms_enroll where id='$_GET[id]'");
ShowMsg('删除成功','adenroll.php');
}
}else{
$dl = new DataListCP();
$dl->pageSize = 10;//每页显示10条
$dl->SetTemplate('./templets/adenroll.htm');//载入模板
$sql="select * from cms_enroll";
$dl->SetSource($sql);//执行sql 不能与$dl->SetTemplate 颠倒
$dl->Display();//显示页面
}
?>
adenroll.html
复制代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head>
<title>在线报名管理</title>
<link href='img/base.css' rel='stylesheet' type='text/css' />
<style type="text/css">
th,td{
text-align:center;
border:1px #D1DDAA solid;
font-size:15px;
}
th{
background:#E6F8B7;
}
table{
margin-top:20px;
}
</style>
</head>
<body>
<table width="90%" border="0" cellpadding="0" cellspacing="0" align="center">
<tr>
<th>姓名</th>
<th>E-mail</th>
<th>状态</th>
<th>操作</th>
</tr>
<!-- 循环得到结果 -->
{dede:datalist}
<tr>
<td>{dede:field.name /}</td>
<td>{dede:field.mail /}</td>
<td>
{dede:if field.tag==0}
未录取
{else}
<font color="red">已录取</font>
{/dede:if}
</td>
<td> <a href="adenroll.php?action=pass&id={dede:field.id /}">[录取]</a>
|
<a href="adenroll.php?action=nopass&id={dede:field.id /}">[不通过]</a>
|
<a href="adenroll.php?action=delete&id={dede:field.id /}">[删除]</a>
</td>
</tr>
{/dede:datalist}
</table>
<!-- 分页标签 -->
<p style="text-align:center;font-size:15px;">{dede:pagelist listitem="info,index,end,pre,next,pageno" listsize="5"/}</p>
</body>
</html>
分享到:
相关推荐
织梦DEDECMS隐藏内容付费查看可见插件是一款专为基于DEDECMS内容管理系统开发的扩展功能插件。DEDECMS,全称是DedeCms,是由织梦内容管理系统团队开发的一款开源PHP网站管理系统,广泛应用于企业建站和个人博客等...
除非你能对DEDecms进行彻底的二次开发,否则请不要对这个目录进行操作。 2. 数据目录 数据库目录,一般用于存在网站是运行的过程中所产生的一些文件,有了这些文件,系统才能更好的运行起来。当然,有的文件...
5. 实例开发:实例开发部分可能涵盖如何创建自定义模块、插件或模板,这些都是Dedecms灵活性的体现。开发者可以借此了解如何扩展Dedecms的功能,满足不同网站的需求。 6. 模板引擎:Dedecms使用了自己的一套模板...
【标题】"织梦全国多城市分站地区插件(带教程)别轻易尝试" 提供的是一个针对织梦(DedeCMS)内容管理系统开发的插件,该插件允许用户构建一个支持全国多城市分站的网站。织梦CMS是一款广泛使用的开源PHP+MySQL的...
在压缩包中的“插件使用教程.url”文件,很可能是指向详细使用教程的网址,帮助用户快速掌握插件的安装和配置方法。而“utf8”和“gbk”可能是编码文件,分别代表了UTF-8和GBK两种字符编码格式,这表明插件可能支持...
织梦同步插件是一款专为织梦内容管理系统(DedeCMS)设计的扩展工具,用于实现电脑PC站与手机WAP站数据的高效同步。V2.2版本的发布带来了更多的功能优化和稳定性提升,旨在解决网站在多平台间同步内容时的困扰,确保...
6. **插件扩展**:DedeCms拥有丰富的第三方插件和模块,如论坛、问答、电商等,可以进一步扩展网站功能。 7. **数据备份与恢复**:内置的数据备份恢复功能,可以定期备份网站数据,以防意外情况导致的数据丢失,...
根据压缩包子文件的名称,我们可以推测其中可能包含了一份关于织梦Dedecms管理员的资源集合(可能是博客链接或教程),以及两个不同编码版本的Tag静态化插件——一个为UTF-8编码(TAG静态化uft 5.6),另一个为GBK...
【织梦评论插件】是针对织梦内容管理系统(DedeCMS)开发的一款增强网站互动性的组件。织梦内容管理系统是一款广泛使用的开源PHP网站建站系统,它提供了丰富的模板和功能,便于用户构建个性化网站。而这款评论插件则...
【标题】中的“织梦网站百小程序微信小程序插件企业官网小程序源码内附对接教程”揭示了这个压缩包文件的主要内容,它是一款专为织梦(DedeCMS)网站设计的小程序插件,适用于百度小程序和微信小程序,且包含了企业...
在【压缩包子文件的文件名称列表】中提到的“【资料整理】”,这可能包含了一系列与DedeCms v4.0 RC1相关的文档、教程、示例代码或者数据库结构等资料,用于帮助用户了解和学习如何使用这个CMS系统。这些文件可能...
6. **插件和模块的兼容性**:检查并确认DedeCMS的插件和模块在phpcms 2008中是否有对应的替代品或者需要重新开发。 7. **测试**:在完成数据迁移后,对新站点进行全面测试,确保所有功能正常工作,内容显示正确,无...
【织梦点赞插件】是针对织梦内容管理系统(DedeCMS)开发的一款增强互动性的功能组件。织梦系统是一款广泛应用于网站构建的开源CMS,它提供了强大的内容管理和模板设计能力。这款点赞插件旨在为文章页面添加点赞功能...
压缩包中的文件"132707488060623219"可能是DedeCMS源码的一部分,可能包含系统核心文件、模板文件、数据库配置、插件、日志等。深入研究这个文件,可以了解到DedeCMS的内部架构和工作原理,对于PHP开发者来说,这是...
本压缩包文件“织梦插件:一键批量提交百度、熊掌天周级.zip”是针对织梦系统开发的一款优化工具,旨在帮助用户更高效地进行搜索引擎优化(SEO),特别是针对百度和熊掌号的收录提交。 插件的核心功能在于批量处理...
【标题】"基于PHP的MZIP038-...在部署和使用过程中,应遵循源码的安装教程,进行必要的配置,并根据需要进行自定义修改以满足特定需求。同时,定期更新和维护源码,确保其安全性和稳定性,以抵御潜在的安全威胁和利用。
【CMS程序DedeCms v5.1 SP1 GBK Build20080812-dedecmsv51-gbk.zip】是一个基于PHP和MySQL的开源内容管理系统(CMS),由织梦内容管理系统(DedeCms)开发团队在2008年8月12日发布。DedeCms在中国大陆广受欢迎,因其...
织梦内容管理系统(DedeCMS)是一款广泛使用的开源中国PHP CMS,它提供了强大的模板引擎和丰富的插件系统,使得用户可以轻松定制网站。"网上报名木块"是这个系统的一个扩展功能,用于添加在线报名的功能,让用户无需...
【描述】中的“一般涉及到dede 在教程中都会体现”意味着这个教程可能涵盖了dedecms的各个方面,包括但不限于安装配置、模板设计、文章管理、会员系统、SEO优化、插件扩展等内容。"不错的一个教程"则表明该教程质量...