织梦dedecms自定义表单留言板邮件提醒设置

一,先在后台核心,频道模型,自定义表单中设置好留言板及相关字段.具体可以搜索了解.


 
 
二后台,系统,基本参数,添加新变量,增加myemail即客户留言后的收信电子邮件地址比如,比如设置你的常用qq邮箱
 
三,后台,系统,基本参数核心设置中,设置好163发件服务器,如下图,前提是163要开启一下smtp服务.
 
四,修改plus/diy.PHP文件,找到
 
if($dsql->ExecuteNoneQuery($query)){
在下面添加
 
 
//发送EMAIL
 
$mailtitle=$corporate.'在'.$cfg_webname.'发表了留言';
 
$mailbody ="公司名称:".$corporate."<br/>联系人:".$contacts."<br/>电话:".$phone."<br/>地址:".$address."<br/>qq:".$qq."<br/>留言内容:<br/>".$content."\r\n\r\n";
 
$headers = "From:".$myemail."\r\nReply-To: ".$myemail;
 
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;
 
  $smtp->sendmail($myemail, $cfg_webname,$cfg_smtp_usermail,$mailtitle, $mailbody, $mailtype);
 
}
 
else
 
{
 
  @mail($myemail, $mailtitle, $mailbody,$headers);
 
}
 
其中的corporate,contacts,phone,qq,address,content都是自定义字段,对比修改或删除,如果收信失败.
 
把上面的debug = false修改为debug = true查看错误原因
 
五,经过测试,qq邮箱服务器一直没法收信,
 
提示530 Error: A secure connection is requiered(such as ssl).
 
原因主要是qq邮箱的黑名单制度,通过网站发送来的邮件会被认为不安全,解决办法为
 
登录qq邮箱,进入邮箱首页,点击最下面的自助查询,收信查询,删除黑名单
 
=================
 
如果163邮箱作为发信邮箱,在测试时,发现发邮件报错535 Error:authentication failed.
 
调用163邮箱服务器来发送邮件,我们需要开启POP3/SMTP服务,这时163邮件会让我们设置客户端授权码,这个授权码替代上面代码部分的passwd即可成功发送邮件