| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 | <?php/** * Created by PhpStorm. * User: 中闽 < 1464674022@qq.com > * Date: 2019/12/5 * Time: 17:44 */namespace app\admin\controller;use app\admin\controller\base\Permissions;use think\Db;class Emailconfig extends Permissions{    public function index()    {        $data = \app\common\model\Emailconfig::get(1);        $this->assign('data', $data);        $grouptabs = (new \app\common\model\ConfigTab())->order('sort desc')->select();        $this->assign('tabs', $grouptabs);        return $this->fetch();    }    public function publish()    {        if ($this->request->isPost()) {            $post = $this->request->post();            $validate = new \think\Validate([                ['from_email', 'require|email', '发件箱不能为空|发件箱格式不正确'],                ['from_name', 'require', '发件人不能为空'],                ['smtp', 'require', '邮箱smtp服务器不能为空'],                ['username', 'require|email', '登录账户不能为空|登录账户应为邮箱格式'],                ['password', 'require', '登录密码不能为空'],                ['content', 'require', '邮件模板不能为空'],            ]);            if (!$validate->check($post)) {                $this->error('提交失败:' . $validate->getError());            }            if (false == Db::name('emailconfig')->where('email', 'email')->update($post)) {                $this->error('提交失败');            } else {                $this->success('提交成功', 'admin/emailconfig/index');            }        } else {            $this->error('非法请求');        }    }    //测试发送    public function mailto()    {        if ($this->request->isPost()) {            $post = $this->request->post();            $validate = new \think\Validate([                ['email', 'require|email', '收件箱不能为空|收件箱格式不正确'],            ]);            if (!$validate->check($post)) {                $this->error('提交失败:' . $validate->getError());            }            $to_email = $post['email'];            $data = \app\common\model\Emailconfig::get(1);            $title = $data['title'];            $content = str_replace(['{nickname}', '{code}', '{passport}', '{email}', '{time}'], ['tplay1', '1234', 'tplay2', 'tplay@test.com', date('Y-m-d H:i:s', time())], $data['content']);            $from_email = $data['from_email'];            $from_name = $data['from_name'];            $smtp = $data['smtp'];            $username = $data['username'];            $password = $data['password'];            if (!$title || !$content || !$from_email || !$from_name || !$smtp || !$username || !$password) {                $this->error('请先配置发件邮箱信息');            }            $mailto = SendMail($to_email, $title, $content, $from_email, $from_name, $smtp, $username, $password);            if (false == $mailto) {                $this->error('发送失败');            } else {                $this->success('邮件发送成功');            }        } else {            return $this->fetch();        }    }}
 |