使用phpmailer发送邮件

介绍

最近需要用PHP发送邮件,找到了phpmailer这个项目,结合HTML整合富文本编辑器,做了一个简单的demo

源码:sendmail

截图

首页样式图

phpmailer首页

编辑器页面

编辑页面

发送成功

发送成功页面

部分代码

wangeditor配置代码
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
var E = window.wangEditor;

var editor = new E("#editor");

editor.customConfig.menus = [

  "head", // 标题

  "bold", // 粗体

  "fontSize", // 字号

  "fontName", // 字体

  "italic", // 斜体

  "underline", // 下划线

  "strikeThrough", // 删除线

  "foreColor", // 文字颜色

  "backColor", // 背景颜色

  "link", // 插入链接

  "list", // 列表

  "justify", // 对齐方式

  "quote", // 引用

  "emoticon", // 表情

  "image", // 插入图片

  "table", // 表格

  "video", // 插入视频

  "code", // 插入代码

  "undo", // 撤销

  "redo", // 重复

];

editor.create();
邮件发送信息获取代码
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
$("#senMail").click(function () {

  $(this).attr("disabled", "true"); //只能点击一次

  var content = editor.txt.html(); //获取邮件内容

  var title = $("#title").val(); //获取邮件标题

  var receiver = $("#receiver").val(); //获取收件人地址

  //Ajax POST发送

  $.ajax({

    type: "post",

    url: "send.php",

    data: { content: content, title: title, receiver: receiver },

    dataType: "json",

    success: function (res) {

      alert(res.message);

      setTimeout(function () {

        location.reload();

      }, 500); //发送成功后点击确定0.5秒内刷新页面

    },

    error: function () {

      console.log("请求失败");

    },

  });

});
phpmailer后台处理邮件信息代码
1
2
3
4
5
6
7
8
9
if (!$mail->send()) {

    echo json_encode(array('status' => 'error', 'message' => $mail->ErrorInfo),true);die();

}else{

    echo json_encode(array('status' => 'success', 'message' => '邮件发送成功'),true);die(); 

}
使用 Hugo 构建
主题 StackJimmy 设计