ecshop实现smtp发送邮件


Posted in PHP onFebruary 03, 2015

使用ECShop的smtp方式发送邮件时,在cls_smtp类文件中,执行到get_data方法中的语句:

$line    = fgets($this->connection, 512);

;时,发生超时错误。

注释掉该函数的执行,直接发送邮件,则返回错误ehlo command failed。

但打印出链接数据时,确实连上了。

之前用别的程序发送邮件也是可以正常发送的,于是重新发送函数,改用phpmailer发送邮件。

function smtp_mail($name, $email, $subject, $content, $type = 1, $notification=false) {

     /* 如果邮件编码不是EC_CHARSET,创建字符集转换对象,转换编码 */

    if ($GLOBALS['_CFG']['mail_charset'] != EC_CHARSET)

    {

        $name      = ecs_iconv(EC_CHARSET, $GLOBALS['_CFG']['mail_charset'], $name);

        $subject   = ecs_iconv(EC_CHARSET, $GLOBALS['_CFG']['mail_charset'], $subject);

        $content   = ecs_iconv(EC_CHARSET, $GLOBALS['_CFG']['mail_charset'], $content);

        $shop_name = ecs_iconv(EC_CHARSET, $GLOBALS['_CFG']['mail_charset'], $GLOBALS['_CFG']['shop_name']);

    }

    $charset   = $GLOBALS['_CFG']['mail_charset'];

    include_once ROOT_PATH . 'includes/phpmailer/class.phpmailer.php';

    $mail = new PHPMailer();

    $mail->From = $GLOBALS['_CFG']['smtp_user'];

    $mail->FromName = '云南***播有限公司';

    if ($GLOBALS['_CFG']['mail_service'] == 0) {

        $mail->isMail();

    } else {

        $mail->IsSMTP();

        $mail->Host = $GLOBALS['_CFG']['smtp_host'];

        $mail->Port = $GLOBALS['_CFG']['smtp_port'];

        $mail->SMTPAuth = !empty($GLOBALS['_CFG']['smtp_pass']);

        $mail->Username = $GLOBALS['_CFG']['smtp_user'];

        $mail->Password = $GLOBALS['_CFG']['smtp_pass'];

    }

    $mail->Encoding = "base64";

    //$mail->Priority     = $this->priority;

    $mail->CharSet      = $charset;

    $mail->IsHTML($type);

    $mail->Subject      = $subject;

    $mail->Body         = $content;

    $mail->Timeout      = 30;

    $mail->SMTPDebug    = false;

    $mail->ClearAddresses();

    $mail->AddAddress($email, $name);

    $mail->ConfirmReadingTo = $notification;

    $res = $mail->Send(); 

    if (!$res)

    {

        $GLOBALS['err']->add($mail->ErrorInfo);

        $GLOBALS['err']->add($GLOBALS['_LANG']['sendemail_false']);

        return false;

    }

    return true;

}

以上就是本文的全部内容了,希望小伙伴们能够喜欢。

PHP 相关文章推荐
PHP实现域名whois查询的代码(数据源万网、新网)
Feb 22 PHP
flash用php连接数据库的代码
Apr 21 PHP
php的POSIX 函数以及进程测试的深入分析
Jun 03 PHP
PHP 安全检测代码片段(分享)
Jul 05 PHP
PHP用身份证号获取星座和生肖的方法
Nov 07 PHP
ThinkPHP模板自定义标签使用方法
Jun 26 PHP
php字符串函数学习之substr()
Mar 27 PHP
php上传图片获取路径及给表单字段赋值的方法
Jan 23 PHP
PHP实现表单提交数据的验证处理功能【防SQL注入和XSS攻击等】
Jul 21 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
Aug 30 PHP
PHP大文件分割上传 PHP分片上传
Aug 28 PHP
PHP实现简单的计算器
Aug 28 PHP
PHP中使用php://input处理相同name值的表单数据
Feb 03 #PHP
PHP中实现接收多个name相同但Value不相同表单数据实例
Feb 03 #PHP
四种php中webservice实现的简单架构方法及实例
Feb 03 #PHP
php上传中文文件名乱码问题处理方案
Feb 03 #PHP
php上传文件常见问题总结
Feb 03 #PHP
PHP、Python和Javascript的装饰器模式对比
Feb 03 #PHP
php对象在内存中的存在形式分析
Feb 03 #PHP
You might like
兼容性最强的PHP生成缩略图的函数代码(修改版)
2011/01/18 PHP
PHP实现简单搜歌的方法
2015/07/28 PHP
PHP Oauth授权和本地加密实现方法
2016/08/12 PHP
Laravel框架Request、Response及Session操作示例
2019/05/06 PHP
PHP操作XML中XPath的应用示例
2019/07/04 PHP
PHP常用函数之格式化时间操作示例
2019/10/21 PHP
laravel使用数据库测试注意事项
2020/04/10 PHP
PHP中的异常处理机制深入讲解
2020/11/10 PHP
Hutia 的 JS 代码集
2006/10/24 Javascript
JQuery动态创建DOM、表单元素的实现代码
2011/08/09 Javascript
JS判断数组中是否有重复值得三种实用方法
2013/08/16 Javascript
JavaScript原型链示例分享
2014/01/26 Javascript
Express.JS使用详解
2014/07/17 Javascript
JavaScript组合拼接字符串的效率对比测试
2014/11/06 Javascript
jQuery实现动态表单验证时文本框抖动效果完整实例
2015/08/21 Javascript
创建自己的jquery表格插件
2015/11/25 Javascript
一个用jquery写的判断div滚动条到底部的方法【推荐】
2016/04/29 Javascript
js获取浏览器和屏幕的各种宽度高度
2017/02/22 Javascript
jQuery实现分页功能(含ajax请求、后台数据、附完整demo)
2017/04/03 jQuery
vue 项目如何引入微信sdk接口的方法
2017/12/18 Javascript
如何利用 JS 脚本实现网页全自动秒杀抢购功能
2020/10/12 Javascript
Python中的闭包总结
2014/09/18 Python
Python实现股市信息下载的方法
2015/06/15 Python
实现python版本的按任意键继续/退出
2016/09/26 Python
Python列表list操作符实例分析【标准类型操作符、切片、连接字符、列表解析、重复操作等】
2017/07/24 Python
python数据挖掘需要学的内容
2019/06/23 Python
Python3简单爬虫抓取网页图片代码实例
2019/08/26 Python
在PyCharm中遇到pip安装 失败问题及解决方案(pip失效时的解决方案)
2020/03/10 Python
celery在python爬虫中定时操作实例讲解
2020/11/27 Python
CSS3中几个新增加的盒模型属性使用教程
2016/03/01 HTML / CSS
大学生毕业求职简历的自我评价
2013/10/24 职场文书
毕业生自荐信
2013/12/14 职场文书
平遥古城导游词
2015/02/03 职场文书
详解PHP服务器如何在有限的资源里最大提升并发能力
2021/05/25 PHP
python基于turtle绘制几何图形
2021/06/15 Python
基于Android10渲染Surface的创建过程
2022/08/14 Java/Android