環境要求
- 主機465端口是開啟和放行的
- php擴展openssl是開啟的
- php擴展sockets是開啟的
1、QQ郵箱 或者 163郵箱 126郵箱 開啟SMTP服務,拿到授權碼,根據自己的來
QQ郵箱開啟SMTP服務 和 獲取授權碼
163郵箱開啟SMTP服務和 獲取授權碼
126郵箱開啟SMTP服務,跟163一樣。
2、網站后台 - 系統 - 系統基本參數 - 核心設置
- 是否啟用SMTP方式發送郵件:是
- SMTP服務器:ssl://smtp.163.com 或者 ssl://smtp.qq.com
- SMTP服務器端口:465
- SMTP服務器的用戶郵箱:dedehtml@163.com 或者 858265175@qq.com
- SMTP服務器的用戶帳號:dedehtml 或者 858265175
- SMTP服務器的用戶密碼:填你郵箱授權碼,不是郵箱登錄密碼
配置163郵箱的是這樣
配置QQ郵箱的是這樣
配置126郵箱的是這樣
3、網站后台 - 系統 - 系統基本參數 - 添加新變量
- 變量名稱:cfg_shoujianren
- 變量類型:文本
- 參數說明:收件人
- 變量值:858265175@qq.com
- 所屬組:站點設置
4、打開 /plus/diy.php 找到
$id = $dsql->GetLastID();
在它的下面加入
$mailtitle = "{$diy->name}--留言通知";
$mailbody = '';
foreach($diy->getFieldList() as $field=>$fieldvalue)
{
$mailbody .= "{$fieldvalue[0]}:{${$field}}
";
}
$headers = "From: ".$cfg_adminemail."
Reply-To: ".$cfg_adminemail;
if($cfg_sendmail_bysmtp == 'Y' && !empty($cfg_smtp_server))
{
$mailtype = 'TXT';
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;
$smtp->sendmail($cfg_shoujianren,$cfg_webname ,$cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);
}
else
{
@mail($cfg_shoujianren, $mailtitle, $mailbody, $headers);
}
至此自定義表單發送郵件通知管理者完成