上门一对一计算机家教
当前位置: 首页 > dedecms家教 >

真正解决dede织梦自定义留言表单发送到指定邮箱

点击: 时间:2021-03-24 来源:北京家教网
前言 关于织梦后台对接邮箱, 我整理了以下步骤,适用于163邮箱和qq邮箱 一、开启SMTP服务和获取授权码 1.QQ邮箱或者163邮箱开启smtp服务拿到授权码,步骤差不多,根据自己的

  前言

  关于织梦后台对接邮箱, 我整理了以下步骤,适用于163邮箱和qq邮箱

  一、开启SMTP服务和获取授权码

  1.QQ邮箱或者163邮箱开启smtp服务拿到授权码,步骤差不多,根据自己的来

  二、进入织梦后台设置

  1.网站后台 - 系统 - 系统基本参数 - 核心设置

  是否启用SMTP方式发送邮件:是

  SMTP服务器:ssl://smtp.163.com 或者 ssl://smtp.qq.com

  SMTP服务器端口:465

  SMTP服务器的用户邮箱:dedehtml@163.com 或者 858265175@qq.com

  SMTP服务器的用户帐号:dedehtml 或者 858265175 (去掉@后面的和不去掉没有差别,我试着都可以)

  SMTP服务器的用户密码:填你邮箱授权码,不是邮箱登录密码

  2.网站后台 - 系统 - 系统基本参数 - 添加新变量

  变量名称:cfg_shoujianren

  变量类型:文本

  参数说明:收件人

  变量值:858265175@qq.com

  所属组:站点设置

  3.修改 /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);

  }

   至此表单发送到邮箱就完成了

  总结

  1) SMTP服务器前面要加上 ssl://

  163的邮箱是 ssl://smtp.163.com QQ邮箱是 ssl://smtp.qq.com,

  2) SMTP服务器端口 不管QQ邮箱还是163都是:465

  3) SMTP服务器的用户帐号直接填邮箱号,@后面的去掉或者不去都可以

  4) SMTP服务器的用户密码:填你邮箱授权码,不是邮箱登录密码

  5) 网站发信EMAIL是可以为空的

------分隔线----------------------------