dedecms插件開發(fā)簡明教程
來源:易賢網(wǎng) 閱讀:1004 次 日期:2016-06-28 14:59:00
溫馨提示:易賢網(wǎng)小編為您整理了“dedecms插件開發(fā)簡明教程”,方便廣大網(wǎng)友查閱!

這篇文章主要為大家介紹了dedecms插件開發(fā)的方法,以實(shí)例形式對插件開發(fā)的步驟進(jìn)行了詳細(xì)的介紹,非常具有實(shí)用價(jià)值,需要的朋友可以參考下

本文簡單講述了dedecms插件開發(fā)的方法。分享給大家供大家參考。具體如下:

這里舉的是一個(gè)很簡單插件實(shí)例,通過此插件,你可以知道怎么樣開發(fā)一個(gè)插件,它結(jié)構(gòu)是怎么設(shè)置的,數(shù)據(jù)庫,后臺等。

文件結(jié)構(gòu)如下:

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, '網(wǎng)上報(bào)名', '<m:item name=''網(wǎng)上報(bào)名'' link=''adenroll.php'' rank=''plus_網(wǎng)上報(bào)名'' target=''main'' />', '', 'g1000', 1, '');

這里說明下 為了方便 我簡單的設(shè)置了 兩個(gè)字段 姓名和郵箱 tag字段是標(biāo)示是否錄取 1為錄取

第一個(gè)insert語句是添加到后臺管理

第二個(gè)insert語句是添加到前臺導(dǎo)航欄

enroll.php文件如下:

代碼如下:

<?php

//*******要先包含common.inc.php 然后 session_start(); 否則取不到session的值

//*******因?yàn)閏ommon.inc.php 有關(guān)于session路徑的配置

include_once dirname(__FILE__).'./../include/common.inc.php';//包含配置文件

session_start();

require_once DEDEINC."/arc.partview.class.php";//包含partiew類

//*****實(shí)例化 這個(gè)類的作用是得到頭部導(dǎo)航欄和尾部信息 若不需要可以使用dedetemplate.class.php 這個(gè)類

$pv = new PartView();

if($_POST){

if( CheckEmail($_POST['mail'])==false){//驗(yàn)證郵箱 方法在common.func.php 公用函數(shù)

ShowMsg('郵箱格式錯(cuò)誤','-1');

exit();

}

if($_POST['name']==""){

ShowMsg('用戶名不能為空','-1');

exit();

}else{

$name=htmlspecialchars($_POST['name']);

}

if($_SESSION['dd_ckstr']!=strtolower($_POST['validation'])){//驗(yàn)證 驗(yàn)證碼 必須轉(zhuǎn)換成小寫

ShowMsg('驗(yàn)證碼錯(cuò)誤',-1);

exit();

}

$sql="insert into `cms_enroll`(name,mail) values('$name','$_POST[mail]')";

//********$db可直接使用 系統(tǒng)自動實(shí)例化了dedesql.class.php

$affected = $db->ExecuteNoneQuery2($sql);//執(zhí)行一條語句 返回影響值

if($affected){

ShowMsg('報(bào)名成功',-1);

}

}else{

$pv->SetTemplet(DEDETEMPLATE.'/plus/enroll.htm');//設(shè)置模板

$pv->Display();//顯示頁面

}

?>

enroll.htm文件如下:

代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<a >

<head>

<title>{dede:global.cfg_webname/}-在線報(bào)名</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" />

郵 箱:<input type="text" size=30 name="mail" />

<!--vdimgck.php 是驗(yàn)證碼-->

驗(yàn)證碼:<input type="text" name="validation" /><img src="../../include/vdimgck.php" />

<input name="encoll" type="submit" value="報(bào)名" />

</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);//執(zhí)行sql 不能與$dl->SetTemplate 顛倒

$dl->Display();//顯示頁面

}

?>

adenroll.html文件如下:

代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""<a >

<head>

<title>在線報(bào)名管理</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>狀態(tài)</th>

<th>操作</th>

</tr>

<!-- 循環(huán)得到結(jié)果 -->

{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>

<!-- 分頁標(biāo)簽 -->

<p style="text-align:center;font-size:15px;">{dede:pagelist listitem="info,index,end,pre,next,pageno" listsize="5"/}</p>

</body>

</html>

希望本文所述對大家的dedecms二次開發(fā)有所幫助。

更多信息請查看CMS教程
易賢網(wǎng)手機(jī)網(wǎng)站地址:dedecms插件開發(fā)簡明教程
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!
相關(guān)閱讀CMS教程

2025國考·省考課程試聽報(bào)名

  • 報(bào)班類型
  • 姓名
  • 手機(jī)號
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 加入群交流 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)