織夢網站自定義表單設置好后會提交到后臺,但是很多管理員不會經常注意到信息,所以我現在給大家分享一下將自定義表單信息提交到指定郵箱:
1、首先在織夢網站后臺,進入系統--系統基本參數--核心設置里面,如下圖:
將紅色標注的填寫為自己的郵箱帳號(同一個賬號哦)
2、打開網站根目錄下的plus文件夾,里面有個diy.php文件(表單提交后處理文件),打開它,在85行上下有如下代碼: $query = "INSERT INTO `{$diy->table}` (`id`, `ifcheck` $addvar) VALUES (NULL, 0 $addvalue); ";這個代碼就是將表單數據寫入數據庫,那么我們就在他下方,加上發送郵件的功能(最下方有我改得diy.php代碼 UTF8的! 直接復制放進去! 改下第88行的name):
-
$mailtitle="用戶訂單信息";//郵件標題
-
-
$mailbody="稱呼:{$name} 郵箱:{$email} 所在城市:{$city} 國家:{$guojia} 電話:{$tel} 類別:{$qudao}";//$name中name是該input元素的id號
-
-
$headers=$cfg_adminemail;//用我們剛才設置的管理員郵箱發送
-
-
$mailtype='TXT';//郵件類型為文本類型
-
-
require_once(DEDEINC.'/mail.class.php');//加載織夢的郵件庫
-
-
$smtp=newsmtp($cfg_smtp_server,$cfg_smtp_port,true,$cfg_smtp_usermail,$cfg_smtp_password);//創建smtp服務
-
-
$smtp->debug=false;//不起用調試
-
-
$smtp->sendmail($cfg_smtp_usermail,$cfg_webname,$cfg_smtp_usermail,$mailtitle,$mailbody,$mailtype);//發送郵件
3、(一般都是國內服務器!不加沒什么事!)加上第二步給的代碼,就可以實現管理員郵箱給自己發信,內容通過id號獲取,不過美國主機是限制自己給自己發郵件的,所以在第二步代碼的最后一句,要將其改下:$smtp->sendmail($cfg_smtp_usermail,$cfg_webname ,$cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);//發送郵件,sendmail(收件人,網站名,發件人,郵件標題,郵件內容,郵件類型),將收件人重新定義一個,比如:
$cfg_smtp_usermail2="xxxx@qq.com";
$smtp->sendmail($cfg_smtp_usermail2,$cfg_webname ,$cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);
這樣就可以收到啦。
下面是我個人的測試diy.php代碼
第八十八行非常重要! 你要把你表單里面的name全部放進去! 內容才可以!
-
<?php
-
/**
-
*
-
*自定義表單
-
*
-
*@version$Id:diy.php115:382010年7月8日Ztianya$
-
*@packageDedeCMS.Site
-
*@copyrightCopyright(c)2007-2010,DesDev,Inc.
-
*@licensehttp://help.dedecms.com/usersguide/license.html
-
*@linkhttp://www.dedecms.com
-
*/
-
require_once(dirname(__FILE__)."/../include/common.inc.php");
-
-
$diyid=isset($diyid)&&is_numeric($diyid)?$diyid:0;
-
$action=isset($action)&&in_array($action,array('post','list','view'))?$action:'post';
-
$id=isset($id)&&is_numeric($id)?$id:0;
-
-
if(emptyempty($diyid))
-
{
-
showMsg('非法操作!','javascript:;');
-
exit();
-
}
-
-
require_onceDEDEINC.'/diyform.cls.php';
-
$diy=newdiyform($diyid);
-
-
/*----------------------------
-
functionPost(){}
-
---------------------------*/
-
if($action=='post')
-
{
-
if(emptyempty($do))
-
{
-
$postform=$diy->getForm(true);
-
includeDEDEROOT."/templets/plus/{$diy->postTemplate}";
-
exit();
-
}
-
elseif($do==2)
-
{
-
$dede_fields=emptyempty($dede_fields)?'':trim($dede_fields);
-
$dede_fieldshash=emptyempty($dede_fieldshash)?'':trim($dede_fieldshash);
-
if(!emptyempty($dede_fields))
-
{
-
if($dede_fieldshash!=md5($dede_fields.$cfg_cookie_encode))
-
{
-
showMsg('數據校驗不對,程序返回','-1');
-
exit();
-
}
-
}
-
$diyform=$dsql->getOne("select*fromdede_diyformswherediyid='$diyid'");
-
if(!is_array($diyform))
-
{
-
showmsg('自定義表單不存在','-1');
-
exit();
-
}
-
-
$addvar=$addvalue='';
-
-
if(!emptyempty($dede_fields))
-
{
-
-
$fieldarr=explode(';',$dede_fields);
-
if(is_array($fieldarr))
-
{
-
foreach($fieldarras$field)
-
{
-
if($field=='')continue;
-
$fieldinfo=explode(',',$field);
-
if($fieldinfo[1]=='textdata')
-
{
-
${$fieldinfo[0]}=FilterSearch(stripslashes(${$fieldinfo[0]}));
-
${$fieldinfo[0]}=addslashes(${$fieldinfo[0]});
-
}
-
else
-
{
-
${$fieldinfo[0]}=GetFieldValue(${$fieldinfo[0]},$fieldinfo[1],0,'add','','diy',$fieldinfo[0]);
-
}
-
$addvar.=',`'.$fieldinfo[0].'`';
-
$addvalue.=",'".${$fieldinfo[0]}."'";
-
}
-
}
-
-
}
-
-
$query="INSERTINTO`{$diy->table}`(`id`,`ifcheck`$addvar)VALUES(NULL,0$addvalue);";
-
$mailtitle="用戶訂單信息";//郵件標題
-
-
$mailbody="稱呼:{$name} 郵箱:{$email} 電話:{$tele} 手機:{$sj} 地址:{$dz} 說明:{$sm}";//$name中name是該input元素的id號
-
-
$headers=$cfg_adminemail;//用我們剛才設置的管理員郵箱發送
-
-
$mailtype='TXT';//郵件類型為文本類型
-
-
require_once(DEDEINC.'/mail.class.php');//加載織夢的郵件庫
-
-
$smtp=newsmtp($cfg_smtp_server,$cfg_smtp_port,true,$cfg_smtp_usermail,$cfg_smtp_password);//創建smtp服務
-
-
$smtp->debug=false;//不起用調試
-
-
$smtp->sendmail($cfg_smtp_usermail,$cfg_webname,$cfg_smtp_usermail,$mailtitle,$mailbody,$mailtype);//發送郵件
-
-
if($dsql->ExecuteNoneQuery($query))
-
{
-
$id=$dsql->GetLastID();
-
if($diy->public==2)
-
{
-
//diy.php?action=view&diyid={$diy->diyid}&id=$id
-
$goto="diy.php?action=list&diyid={$diy->diyid}";
-
$bkmsg='發布成功,現在轉向表單列表頁...';
-
}
-
else
-
{
-
$goto=!emptyempty($cfg_cmspath)?$cfg_cmspath:'/';
-
$bkmsg='發布成功,請等待管理員處理...';
-
}
-
showmsg($bkmsg,$goto);
-
}
-
}
-
}
-
/*----------------------------
-
functionlist(){}
-
---------------------------*/
-
elseif($action=='list')
-
{
-
if(emptyempty($diy->public))
-
{
-
showMsg('后臺關閉前臺瀏覽','javascript:;');
-
exit();
-
}
-
include_onceDEDEINC.'/datalistcp.class.php';
-
if($diy->public==2)
-
$query="SELECT*FROM`{$diy->table}`ORDERBYidDESC";
-
else
-
$query="SELECT*FROM`{$diy->table}`WHEREifcheck=1ORDERBYidDESC";
-
-
$datalist=newDataListCP();
-
$datalist->pageSize=10;
-
$datalist->SetParameter('action','list');
-
$datalist->SetParameter('diyid',$diyid);
-
$datalist->SetTemplate(DEDEINC."/../templets/plus/{$diy->listTemplate}");
-
$datalist->SetSource($query);
-
$fieldlist=$diy->getFieldList();
-
$datalist->Display();
-
}
-
elseif($action=='view')
-
{
-
if(emptyempty($diy->public))
-
{
-
showMsg('后臺關閉前臺瀏覽','javascript:;');
-
exit();
-
}
-
-
if(emptyempty($id))
-
{
-
showMsg('非法操作!未指定id','javascript:;');
-
exit();
-
}
-
if($diy->public==2)
-
{
-
$query="SELECT*FROM{$diy->table}WHEREid='$id'";
-
}
-
else
-
{
-
$query="SELECT*FROM{$diy->table}WHEREid='$id'ANDifcheck=1";
-
}
-
$row=$dsql->GetOne($query);
-
-
if(!is_array($row))
-
{
-
showmsg('你訪問的記錄不存在或未經審核','-1');
-
exit();
-
}
-
-
$fieldlist=$diy->getFieldList();
-
includeDEDEROOT."/templets/plus/{$diy->viewTemplate}";
-
}