需求: 接收用戶提交的手機號 存儲之后 給默認郵箱發送郵件
一 自定義表單
第一步:核心-頻道模型-自定義表單-增加新的自定義表單。
第二步:“自定義表單名稱”和“數據表”可自行修改,【數據表】前綴最好和織夢系統的前綴相同dede_。
第三步:添加新的字段。
第四步:“表單提示文字”就是用戶填寫表單時左側顯示的文字。
提示:若有多個添寫的項目,重復第三步和第四步就可以了!
第五步:點擊“前臺預覽”。
第六步:點擊“發布信息”。
第七步:點擊鼠標右鍵,查看“網頁源代碼”。
第八步:把下圖中這段位于<form></form>標簽中的代碼復制 粘貼到需要調用的地方 根據需要修改樣式
二 發送郵件
首先設置dede后后臺
進入dede后臺,系統,系統基本參數,核心設置,配置好郵箱發信的信息.
1、是否啟用smtp方式發送郵件:是.
2、smtp服務器: smtp.126.com (這里推薦網易郵箱,實測出現問題的概率比較小)
3、smtp服務器端口: 25 (一般這個不需要可以去修改改變.默認為:25)
4、SMTP服務器的用戶郵箱:?xxxxx@126.com?(這里填寫完整的郵箱地址)
5、SMTP服務器的用戶帳號: XXX (這里填寫郵箱開頭的賬戶也就是用戶名)
6、SMTP服務器的用戶密碼: 123456 (密碼就不用多說了)
二、修改/plus/diy.php文件(記得備份)
首先打開 /plus/diy.php ,把下面的代碼
//郵件發送函數function sendmail($email, $mailtitle, $mailbody){global $cfg_sendmail_bysmtp, $cfg_smtp_server, $cfg_smtp_port, $cfg_smtp_usermail, $cfg_smtp_user, $cfg_smtp_password, $cfg_adminemail,$cfg_webname;if($cfg_sendmail_bysmtp == 'Y' && !empty($cfg_smtp_server)){ $mailtype = 'HTML'; require_once(DEDEINC.'/mail.class.php'); $smtp = new smtp($cfg_smtp_server,$cfg_smtp_port,true,$cfg_smtp_usermail,$cfg_smtp_password); $smtp->debug = false;if(!$smtp->smtp_sockopen($cfg_smtp_server)){ShowMsg('郵件發送失敗,請聯系管理員','-1');exit();} $smtp->sendmail($email,$cfg_webname,$cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);}else{@mail($email, $mailtitle, $mailbody, $headers);}}
放到
require_once(dirname(FILE)."/../include/common.inc.php");
的下面。
//郵件發送函數
function sendmail($email, $mailtitle, $mailbody){global $cfg_sendmail_bysmtp, $cfg_smtp_server, $cfg_smtp_port, $cfg_smtp_usermail, $cfg_smtp_user, $cfg_smtp_password, $cfg_adminemail,$cfg_webname;if($cfg_sendmail_bysmtp == 'Y' && !empty($cfg_smtp_server)){ $mailtype = 'HTML'; require_once(DEDEINC.'/mail.class.php'); $smtp = new smtp($cfg_smtp_server,$cfg_smtp_port,true,$cfg_smtp_usermail,$cfg_smtp_password); $smtp->debug = false;if(!$smtp->smtp_sockopen($cfg_smtp_server)){ShowMsg('郵件發送失敗,請聯系管理員','-1');exit();} $smtp->sendmail($email,$cfg_webname,$cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);}else{@mail($email, $mailtitle, $mailbody, $headers);}}
然后把
$email = "xxx@126.com"; //這里填寫要發送到的郵箱
$mailtitle = "郵件標題";
$mailbody = "
類別:{$p_pname}<br />
申請類型:{$p_pnames}<br />
姓名:{$p_name}<br />
電話:{$p_tel}<br />
郵箱:{$p_mail}<br />
城市:{$p_city}<br />
行業:{$p_xm}<br />
提交時間:{$p_time}<br />
需求:{$p_info}<br />
";
sendmail($email, $mailtitle, $mailbody);
放到
$id = $dsql->GetLastID();
的上面,保存文件。
其中$mailbody為郵件內容,根據你的自定義表單的id或name來修改。
提交測試...
總結
以上是生活随笔為你收集整理的dedecms自定义表单 发送邮件的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。