用织梦制作网站时,很多客户需要有在线留言功能,这时就会用到自定义表单。但是很多用户觉得经常登陆后台查看留言信息太麻烦了,于是想能否在提交留言是直接把内容发送到指定邮箱。织梦模板之家做网站经过尝试终于实现了上述功能,今天就跟大家分享一下织梦如何在自定义表单提交时发送到邮箱?
第一步、首先在织梦网站后台,进入系统--系统基本参数--核心设置里面,其中需要设置下列几项:
网站发信EMAIL:如123456@qq.com;smtp服务器:如:smtp.qq.com;SMTP服务器的用户邮箱:123456@qq.com SMTP服务器的用户帐号:123456@qq.com;SMTP服务器的用户密码:你知道的。
第二步、找到/plus/diy.php文件约85行:
$query = "INSERT INTO `{$diy->table}` (`id`, `ifcheck` $addvar) VALUES (NULL, 0 $addvalue); "; 后面添加如下代码:$mailtitle = $name."提交表单通知";$mailbody = "称呼:{$name} 邮箱:{$email} 内容:{$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);注:$name $email $message 三个变量都是提交的字段,你提交的字段名称前面加$符号就行,这个根据你的需要来改。然后保存。
第三步、如果网站使用的是国外服务器需要对第二步进行一下处理
一般网站使用的是国内服务器加上第二步给的代码,就可以实现管理员邮箱给自己发信,内容通过id号获取,不过美国主机是限制自己给自己发邮件的,所以在第二步代码的最后一句,要将其改下:$smtp->sendmail($cfg_smtp_usermail,$cfg_webname ,$cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);//发送邮件sendmail(收件人,网站名,发件人,邮件标题,邮件内容,邮件类型),将收件人重新定义一个,比如:$cfg_smtp_usermail2="xxxx@qq.com";$smtp->sendmail($cfg_smtp_usermail2.$cfg_webname ,$cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);这样就可以收到提交过来的表单信息了。