环境要求(硬性指标,不支持就无法发送):
主机465端口是开启和放行的
php扩展openssl是开启的
php扩展sockets是开启的
虚拟主机必须开启fsockopen函数
阿里云虚拟主机开启fsockopen函数
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服务器的用户邮箱:123456@163.com 或者 12345678@qq.com
SMTP服务器的用户帐号:dedecms 或者 12345678
SMTP服务器的用户密码:填你邮箱授权码,不是邮箱登录密码
配置163邮箱的是这样:
配置QQ邮箱的是这样:
配置126邮箱的是这样:
3、网站后台 – 系统 – 系统基本参数 – 添加新变量:
变量名称:cfg_shoujianren
变量类型:文本
参数说明:收件人
变量值:123456@qq.com
所属组:站点设置
4、打开 /plus/diy.php 找到
$id = $dsql->GetLastID();
在它的下面加入
$mailtitle = "{$diy->name}--留言通知"; $mailbody = ''; foreach($diy->getFieldList() as $field=>$fieldvalue) { $mailbody .= "{$fieldvalue[0]}:{${$field}}\r\n"; } $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 = 0;//发送不成功把0改成1,再提交看错误信息 $smtp->sendmail($cfg_shoujianren,$cfg_webname ,$cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype); } else { @mail($cfg_shoujianren, $mailtitle, $mailbody, $headers); } 至此自定义表单发送邮件通知管理者完成 网易企业邮乱码的解决方法: 打开 /plus/diy.php 找到 $headers = "From: ".$cfg_adminemail."Reply-To: ".$cfg_adminemail; 在它下面加入一行: $mailbody = mb_convert_encoding($mailbody, "GBK", "UTF-8");
完成
评论前必须登录!
立即登录 注册