打造销售型网站的订单系统,用户下了订单后不能及时服务用户,可能会造成订单丢失。DedeCMS默认的订单提交后只能在后台看到的。把订单发送到指定邮箱就简单了。以下方法经本人测试成功,能把提交的订单直接发送到站长指定的邮箱,邮箱最好是163邮箱,有网友测试QQ邮箱出错。
(2016年7月9日更新本帖)
在经过邮箱的更新换代后,163和qq邮箱一样,也设置了一些权限,防止网站后台被注入木马或后台账户泄露,并造成收发邮件的邮箱账户及密码泄露。如果你是老邮箱就可以按照以下方法设置,新邮箱或者qq邮箱,请参考文章《dede用新163或qq邮箱发送会员注册验证邮件失败》
后台设置
怎么设置后台?打开dede后台:系统>系统基本参数>核心设置,看到以下表单,按邮箱设置,注意网站发信emall和下面的smtp服务器都要相同,如果是qq邮箱,要求与ssl服务器端口为465,但实测还是用25端口有效,估计我的空间不是用ssl的。
(此图片来源于网络,如有侵权,请联系删除! )
(此图片来源于网络,如有侵权,请联系删除! )
163邮箱的找到pop3/smtp/imap里面有相应的服务器地址,按要求填写即可,每个邮箱的设置可以参考邮箱相关说明。
(此图片来源于网络,如有侵权,请联系删除! )
修改根目录plus/diy.php
打开根目录plus下面的diy.php文件, 大概在85行找到代码:$query
$mailtitle= $name."提交表单通知"; $mailbody = "称呼:{$name} 电话:{$phone} 内容:{$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
前台部分
(此图片来源于网络,如有侵权,请联系删除! )
点击红色修改选项,弹出下面窗口,再点击[发布信息],查看前台
(此图片来源于网络,如有侵权,请联系删除! )
这就是发布申请的前台部分,鼠标右键查看源代码,把里面<form></form>包括的代码全部复制出来
(此图片来源于网络,如有侵权,请联系删除! )
至于前台怎么写样式就自己动手吧,重要的是[提交按钮],里面的value值必须按步骤用后台写了之后,才能查看正确的源代码数值,自己照着写是没用的,因为并没建立数据库。
(此图片来源于网络,如有侵权,请联系删除! )
最后自己去测试吧。
(2015.9.13更新本帖)
本站用的是万网的虚拟主机,在功能上也是比较齐全,但是万网虚拟主机默认不打开邮箱发送功能就是启用fsockopen函数,只要在后台登陆主机管理,左侧的“高级环境设置”>"PHP.ini">启用fsockopen函数即可。
原来认为QQ邮箱不能实现这个功能,经测试后也能成功,但听说要有一定使用时间的才能开通。