萬盛學電腦網

 萬盛學電腦網 >> CMS教程 >> 帝國CMS商城系統在線支付後,訂單郵件提醒

帝國CMS商城系統在線支付後,訂單郵件提醒

class="area">

帝國不知道從什麼時候就引入了一個發送郵件類,還可以在後台設置管理員郵箱,和發送郵件的相關參數,但是准備了這麼多材料,實際上系統用到的機會不多,大約只在會員注冊驗證、會員重置密碼,和管理員向會員發送消息時用到了郵件功能。實際上帝國這麼多功能,在很多關鍵位置如果能增加一個給管理員發送通知郵件的功能,那會使管理員帶來很大的方便,起碼不用一直掛著後台了。由於帝國已經支持發送郵件了,所以這些功能實現起來很簡單,有需要的同學可以參考一下。

一、設置管理員郵件地址和發郵參數
後台,系統設置,系統參數設置
基本屬性標簽:管理員郵箱。以後的通知郵件都會發到這一郵箱
FTP/EMAIL標簽:如果主機支持mail函數,則個人感覺用這個效率可能高一點,主機不支持的話也沒關系,還可以用SMTP,設置方法跟郵件客戶端一樣。
需要說明的是,如果想用gmail的帳號發送實現起來比較麻煩,gmail的smtp需要ssl,且不說帝國自帶的郵件發送類不支持ssl,就是帝國後台設置郵件的地方也沒有提供ssl選項,所以就不折騰了,用國內的郵箱帳號發就是了。

二、新增給管理員發郵件的函數
找到e\class\SendEmail.inc.php,結尾下加入以下代碼

//給管理員信箱發送通知郵件新增函數
function SendNoticeToAdmin($subject,$body){
        global $empire,$dbtbpre;
        $empire=new mysqlquery();
        $pr=$empire->fetch1("select email from {$dbtbpre}enewspublic limit 1");

        if(is_array($body)){
                foreach($body as $value){
                        $key=key($body);
                        next($body);
                        $msgtext .= "$key:"."$value"."\n";
                }
        }else{
                $msgtext=$body;
        }
        $msgtext .= "\r\n\r\n此郵件由系統自動發出,請管理員盡快處理\n\r";
        $sm=EcmsToSendMail($pr['email'],$subject,$msgtext);
        return $sm;
}

三、給管理員發郵件,以下是不同的場景,可以根據需要自由修改

1.有新訂單時
修改e\enews\index.php,在大約184行
AddDd($_POST);
在這一行前面加上
        @include("../class/SendEmail.inc.php");
        SendNoticeToAdmin("有新訂單!訂單號".$_POST[ddno],$_POST);

完活,這只是起到一個提醒功能,所以郵件界面什麼的就不用考慮了,管理員收到郵件後去帝國後台處理就是了。

2.有新的投稿時
修改e\class\qinfofun.php,在大約850行
printerror("AddQinfoSuccess",$reurl,1);
在這一行前面加上
        @include('SendEmail.inc.php');
        SendNoticeToAdmin("收到來自".$add['title']."的投稿",$add);

3.有新的信息反饋時
修改e\class\q_functions.php,在大約468行
$reurl=DoingReturnUrl("../tool/feedback/?bid=$bid",$add['ecmsfrom']);

copyright © 萬盛學電腦網 all rights reserved