Dedecms教程:自定义表单发送指定邮件并解决内容乱码等问题

织梦教程 强烈建议 2024-02-26 11:42 134 0

  很多时候我们都遇到访客提交了表单,但管理员并不知道,这样就错失了一个客户,今天无忧小编就来解决这个问题;当客户提交自定义表单的时候都,织梦dedecms网站自定义表单设置好后会提交到后台,能向指定好的邮箱发送一封邮件,邮件内容甚至可以是表单的内容,这样我们就可以直接联系客户了;快捷高效而且不会错失任何一个客户,现在给大家分享一下将自定义表单信息提交到指定邮箱: 首先在织梦网站后台,进入系统--系统基本参数--核心设置里面,配给邮件发送服务,如下图: dedecms 邮件服务配置

  dedecms 邮件打开网站根目录下的plus文件夹,里面有个diy.php文件(表单提交后处理文件),打开它,在85行上下有如下代码:

  $query = "INSERT INTO `{$diy->table}` (`id`, `ifcheck` $addvar) VALUES (NULL, 0 $addvalue); ";

  这个代码就是将表单数据写入数据库,那么我们就在他下方,加上发送邮件的功能:

  $query = "INSERT INTO `{$diy->table}` (`id`, `ifcheck` $addvar) VALUES (NULL, 0 $addvalue); ";

  $mailtitle = $name."[提交表单通知]";

  $mailbody = "姓名:{$name}

  手机:{$tel}

  QQ:{$qq}

  留言:{$textarea}

  提交时间:{$time}

  ";

  $headers = $cfg_adminemail;

  $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_smtp_usermail,$cfg_webname ,$cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);//发送邮件 (这个是发给管理员自己)

  如要发给其他人,将上面的代码 修改下面的

  $cfg_smtp_usermail2="XXXXX@qq.com,yyyyyy@qq.com"; //发送多人邮件

  $smtp->sendmail($cfg_smtp_usermail2,$cfg_webname ,$cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);

  这个就可以收到邮件了,可能收到的邮件还会有乱码的情况,

  找到include/mail.class.php 将:

  $header .= "Content-Type:text/html

  ";

  改为:

本站资源均来自互联网或会员发布,如果不小心侵犯了您的权益请与我们联系。我们将立即删除!谢谢!