dedecms自定义表单 发送邮件

需求: 接收用户提交的手机号 存储之后 给默认邮箱发送邮件

dedecms自定义表单 发送邮件_第1张图片
image.png

一 自定义表单

第一步:核心-频道模型-自定义表单-增加新的自定义表单。

dedecms自定义表单 发送邮件_第2张图片
image.png
第二步:“自定义表单名称”和“数据表”可自行修改,【数据表】前缀最好和织梦系统的前缀相同dede_。
dedecms自定义表单 发送邮件_第3张图片
image.png

第三步:添加新的字段。

dedecms自定义表单 发送邮件_第4张图片
image.png

第四步:“表单提示文字”就是用户填写表单时左侧显示的文字。

dedecms自定义表单 发送邮件_第5张图片
image.png

提示:若有多个添写的项目,重复第三步和第四步就可以了!

第五步:点击“前台预览”。

dedecms自定义表单 发送邮件_第6张图片
image.png

第六步:点击“发布信息”。

dedecms自定义表单 发送邮件_第7张图片
image.png

第七步:点击鼠标右键,查看“网页源代码”。

dedecms自定义表单 发送邮件_第8张图片
image.png

第八步:把下图中这段位于

标签中的代码复制 粘贴到需要调用的地方 根据需要修改样式

dedecms自定义表单 发送邮件_第9张图片
image.png

二 发送邮件

首先设置dede后后台
进入dede后台,系统,系统基本参数,核心设置,配置好邮箱发信的信息.

1、是否启用smtp方式发送邮件:是.

2、smtp服务器: smtp.126.com (这里推荐网易邮箱,实测出现问题的概率比较小)

3、smtp服务器端口: 25 (一般这个不需要可以去修改改变.默认为:25)

4、SMTP服务器的用户邮箱: [email protected] (这里填写完整的邮箱地址)

5、SMTP服务器的用户帐号: XXX (这里填写邮箱开头的账户也就是用户名)

6、SMTP服务器的用户密码: 123456 (密码就不用多说了)

dedecms自定义表单 发送邮件_第10张图片
image.png

二、修改/plus/diy.php文件(记得备份)
首先打开 /plus/diy.php ,把下面的代码

//邮件发送函数function sendmail($email, $mailtitle, $mailbody){global $cfg_sendmail_bysmtp, $cfg_smtp_server, $cfg_smtp_port, $cfg_smtp_usermail, $cfg_smtp_user, $cfg_smtp_password, $cfg_adminemail,$cfg_webname;if($cfg_sendmail_bysmtp == 'Y' && !empty($cfg_smtp_server)){ $mailtype = 'HTML'; 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;if(!$smtp->smtp_sockopen($cfg_smtp_server)){ShowMsg('邮件发送失败,请联系管理员','-1');exit();} $smtp->sendmail($email,$cfg_webname,$cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);}else{@mail($email, $mailtitle, $mailbody, $headers);}}

放到

require_once(dirname(FILE)."/../include/common.inc.php");

的下面。

//邮件发送函数
function sendmail($email, $mailtitle, $mailbody){global $cfg_sendmail_bysmtp, $cfg_smtp_server, $cfg_smtp_port, $cfg_smtp_usermail, $cfg_smtp_user, $cfg_smtp_password, $cfg_adminemail,$cfg_webname;if($cfg_sendmail_bysmtp == 'Y' && !empty($cfg_smtp_server)){ $mailtype = 'HTML'; 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;if(!$smtp->smtp_sockopen($cfg_smtp_server)){ShowMsg('邮件发送失败,请联系管理员','-1');exit();} $smtp->sendmail($email,$cfg_webname,$cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);}else{@mail($email, $mailtitle, $mailbody, $headers);}}
然后把

$email = "[email protected]"; //这里填写要发送到的邮箱
$mailtitle = "邮件标题";
$mailbody = "
类别:{$p_pname}

申请类型:{$p_pnames}

姓名:{$p_name}

电话:{$p_tel}

邮箱:{$p_mail}

城市:{$p_city}

行业:{$p_xm}

提交时间:{$p_time}

需求:{$p_info}

";
sendmail($email, $mailtitle, $mailbody);

放到

$id = $dsql->GetLastID();
的上面,保存文件。
其中$mailbody为邮件内容,根据你的自定义表单的id或name来修改。

dedecms自定义表单 发送邮件_第11张图片
image.png

提交测试...

你可能感兴趣的:(dedecms自定义表单 发送邮件)