dd

THINKPHP3.2.3实现后台自定义邮箱发送配置

jerry thinkphp 2015年11月19日 收藏
THINKPHP3.2.3整合PHPMailer实现后台自定义配置邮箱配置信息,如邮件显示名、邮箱服务器地址、邮箱地址、邮箱密码、测试发送内容等,建议使用163邮箱,QQ邮箱容易被当做垃圾邮件屏蔽。
在做项目时经常会遇到使用邮箱发送邮件的情况,比如会员注册时发送注册码、发送注册成功提示信息,忘记密码时发送重置密码链接,有留言时及时发送邮件通知等,本文就讲解THINKPHP3.2.3实现后台自定义配置邮箱配置信息。先看效果图
配置界面

测试发送

邮箱接收测试信息

下面开始教程

一、数据库

首页要在数据库创建一个网站配置表,各个字段说明如下
CREATE TABLE IF NOT EXISTS `go_config` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `field` varchar(255) NOT NULL,
  `title` varchar(255) NOT NULL,
  `mark` varchar(255) NOT NULL,
  `field_type` varchar(255) NOT NULL DEFAULT 'string',
  `config_type` varchar(255) NOT NULL DEFAULT 'site',
  `value` varchar(255) NOT NULL,
  `is_system` tinyint(1) NOT NULL DEFAULT '0',
  `is_required` tinyint(1) NOT NULL DEFAULT '0',
  `sort` int(10) NOT NULL DEFAULT '1',
  `status` tinyint(1) NOT NULL DEFAULT '1',
  `add_time` datetime NOT NULL,
  `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `field` (`field`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=50 ;
二、引入PHPMailer组件
将PHPMailer放入Thinkphp框架的Library/Vendor/目录下

四、邮箱配置页面和保存配置信息控制器

模板放入Application/Admin/View/Config/config_email.html,控制器放入Application/Admin/Controller/ConfigController.class.php

五、添加发送邮件公共函数
在项目的application/Common/Common/function.php里添加发送邮件函数

四、使用方法
在控制器里直接调用sendEmail($tomail,$title,$content)函数即可发送邮件,其中$tomail表示要发送者的邮箱地址,$title表示邮件标题,$content表示发送的内容,支持html。

PS:为方便大家使用,特将所有涉及的代码打包上传,下载地址:http://www.gouguoyin.cn/php/37.html
dd