做DedeCMS的會(huì)員系統(tǒng)有許多常用的功能,有一定的PHP基礎(chǔ)是做點(diǎn)開(kāi)發(fā)還是不難。分享最近學(xué)習(xí)PHP的一個(gè)小功能開(kāi)發(fā)經(jīng)驗(yàn)。前面寫過(guò)一篇《dede實(shí)現(xiàn)會(huì)員加V實(shí)名認(rèn)證》,在這個(gè)功能基礎(chǔ)增加下面的功能:
實(shí)現(xiàn)功能:
①會(huì)員提交相應(yīng)內(nèi)容后發(fā)送信息到管理員;
②管理員審核后發(fā)送消息到會(huì)員短消息。
這兩個(gè)功能實(shí)際上利用的是DedeCMS的短消息功能,
具體步驟:
1.利用Navicat或者phpMyAdmin打開(kāi)數(shù)據(jù)庫(kù)找到dede_member表,新建兩個(gè)字段
字段名:xingming,類型:varchar,字符長(zhǎng)度10; 字段名:shenfenzheng,類型int,字符長(zhǎng)度255;
2.在/member目錄下新建文件pm_new.php,代碼如下
<?php /** *會(huì)員短消息二次開(kāi)發(fā) *會(huì)員認(rèn)證 */ require_once(dirname(__FILE__)."/config.php");//www.vi586.com引入公共設(shè)置 CheckRank(0,0); $menutype = 'config'; if($dopost=='save'){ //前臺(tái)$dopost == 'save'時(shí),接收傳輸過(guò)來(lái)數(shù)據(jù) $xingming = $_POST['xingming']; $shenfenzheng = $_POST['shenfenzheng']; $query = "UPDATE `dede_member` SET `xingming` = '$xingming',`shenfenzheng` = '$shenfenzheng' WHERE mid = '{$cfg_ml->M_ID}'"; $dsql->ExecuteNoneQuery($query); //執(zhí)行以上sql //清除緩存 $cfg_ml->DelCache($cfg_ml->M_ID); $message = "姓名:" . $xingming . "身份證:" . $shenfenzheng; //短消息詳細(xì)內(nèi)容 $subject = "[" . $cfg_ml->M_UserName ."] 提交了認(rèn)證信息,請(qǐng)查閱"; //短消息標(biāo)題 $sendtime = $writetime = time(); //發(fā)布時(shí)間 //自動(dòng)發(fā)送信息到管理員(默認(rèn)為admin,根據(jù)實(shí)際情況修改),其他具體的字段說(shuō)明網(wǎng)上查dede_member_pms $queryToAdmin = "INSERT INTO `dede_member_pms` (`floginid`,`fromid`,`toid`,`tologinid`,`folder`,`subject`,`sendtime`,`writetime`,`hasview`,`isadmin`,`message`) VALUES ('{$cfg_ml->M_LoginID}','{$cfg_ml->M_ID}','1','admin','inbox','$subject','$sendtime','$writetime','0','0','$message'); "; $dsql->ExecuteNoneQuery($queryToAdmin); //執(zhí)行以上sql ShowMsg("已提交信息,等待管理員審核","pm_new.php"); exit(); } include(DEDEMEMBER."/templets/pm_new.htm"); exit(); ?>
3.在/member/templets/,新建文件pm_new.htm,代碼如下
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=<?php echo $cfg_soft_lang; ?>" /> <title>提交內(nèi)容后發(fā)送信息到管理員 - <?php echo $cfg_webname; ?></title> <link href="templets/style/base.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" src="templets/js/j.js"></script> <script type="text/javascript" src="templets/js/leftmenu.js"></script> </head> <body> <p id="main"> <?php include(DEDEMEMBER."/templets/head.htm"); ?> <p id="content" class="w960 clearfix"> <?php include(DEDEMEMBER."/templets/menu.php"); ?> <p id="mcpmain"> <p id="mainCp"> <!--內(nèi)容消息提示 --> <h3 class="meTitle">提交內(nèi)容后發(fā)送信息到管理員</h3> <form method="post" action="pm_new.php"> <input type="hidden" value="save" name="dopost"/> <?php if(defined('UC_API') && @include_once DEDEROOT.'/uc_client/client.php') { $data = uc_get_user($cfg_ml->M_LoginID); echo uc_avatar($data[0]); } else { ?> <p>真實(shí)姓名:<input type="text" name="xingming" class="intxt" value="<?php echo $cfg_ml->fields['xingming'];?>"></p> <p>身 份 證:<input type="text" name="shenfenzheng" class="intxt" value="<?php echo $cfg_ml->fields['shenfenzheng'];?>"></p> <p><input type="submit" value="提交信息"></p> <?php } ?> </form> </p> <!--主操作區(qū)域 --> </p> </p> <?php include(DEDEMEMBER."/templets/foot.htm"); ?> </p> </body> </html>
功能測(cè)試
在/member/pm_new.php,下提交后,在該賬號(hào)的發(fā)件箱是否能看到對(duì)應(yīng)的內(nèi)容了呢?同樣在管理員賬號(hào)內(nèi)檢查收件箱是否有對(duì)應(yīng)的內(nèi)容,但是回復(fù)功能尚不完善,參考文章《》。
,支持原創(chuàng),轉(zhuǎn)載請(qǐng)保留出處