最全实现dede订单表单提交发送到指定邮箱(附前台设置)

dede自定义表单邮件提交

       打造销售型网站的订单系统。不是全部销售都有权限登录网站后台查看订单,特别是外地出差时,用户下了订单后不能及时服务用户,可能会形成订单丢失。但dedecms默认的订单提交后只能在后台看到的,每次都要登录到后台去查看很麻烦。如下方法经本人测试成功,能把提交的订单直接发送到站长指定的邮箱,但邮箱不能是QQ邮箱,不然出错。php

后台设置

       怎么设置后台?打开dede后台:系统>系统基本参数>核心设置,看到如下表单,按邮箱设置,注意网站发信emall和下面的smtp服务器都要相同,若是是qq邮箱,要求与ssl服务器端口为465,但实测仍是用25端口有效,估计个人空间不是用ssl的。web

万网发送邮件到指定邮箱

dede表单提交后台设置

       163邮箱的找到pop3/smtp/imap里面有相应的服务器地址,按要求填写便可,每一个邮箱的设置能够参考邮箱相关说明。数据库

dede表单邮箱提交pop3设置<服务器

修改根目录plus/diy.php

       打开根目录plus下面的diy.php文件, 大概在85行找到代码:$query = "INSERT INTO `{$diy->table}` (`id`, `ifcheck` $addvar) VALUES (NULL, 0 $addvalue); ";   在此代码后面开始加入代码:

$mailtitle = $name."提交表单通知";
$mailbody = "称呼:{$name}\r\n电话:{$phone}\r\n内容:{$message}";
$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);函数

       其中$mailbody = "称呼:{$name}\r\n电话:{$phone}\r\n内容:{$message}";就是在自定义表单中添加自定义字段的名称和id。测试

前台部分

dede表单提交到指定邮箱

       点击红色修改选项,弹出下面窗口,再点击[发布信息],查看前台网站

dede表单发布信息

        这就是发布申请的前台部分,鼠标右键查看源代码,把里面<form></form>包括的代码所有复制出来ui

dede自定义表单发布前台

       至于前台怎么写样式就本身动手吧,重要的是[提交按钮],里面的value值必须按步骤用后台写了以后,才能查看正确的源代码数值,本身照着写是没用的,由于并没创建数据库。spa

dede自定义表单源代码

       最后本身去测试吧。debug

(2015.9.13更新本帖)

       本站用的是万网的虚拟主机,在功能上也是比较齐全,可是万网虚拟主机默认不打开邮箱发送功能就是启用fsockopen函数,只要在后台登录主机管理,左侧的“高级环境设置”>"PHP.ini">启用fsockopen函数便可。

       原来认为QQ邮箱不能实现这个功能,经测试后也能成功,但据说要有必定使用时间的才能开通。


更多教程请访问织梦模板网: http://www.genban.org

相关文章
相关标签/搜索