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注入实例
Oct 09 PHP
多重?l件?合查?(二)
Oct 09 PHP
如何使用PHP往windows中添加用户
Dec 06 PHP
中国站长站 For Dede4.0 采集规则
May 27 PHP
很让人受教的 提高php代码质量36计
Sep 05 PHP
PHPEXCEL 使用小记
Jan 06 PHP
ThinkPHP模版中导入CSS和JS文件的方法
Nov 29 PHP
php中实现获取随机数组列表的自定义函数
Apr 02 PHP
yii2中LinkPager增加总页数和总记录数的实例
Aug 28 PHP
php支付宝APP支付功能
Jul 29 PHP
Laravel基础_关于view共享数据的示例讲解
Oct 14 PHP
PHP7移除的扩展和SAPI
Mar 09 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后台程序与Javascript的两种交互方式
2009/10/25 PHP
php获取url字符串截取路径的文件名和扩展名的函数
2010/01/22 PHP
php中通过curl smtp发送邮件
2012/06/05 PHP
探讨如何把session存入数据库
2013/06/07 PHP
基于PHP magic_quotes_gpc的使用方法详解
2013/06/24 PHP
PHP实现的一致性Hash算法详解【分布式算法】
2018/03/31 PHP
收集json解析的四种方法分享
2014/01/17 Javascript
轻松创建nodejs服务器(2):nodejs服务器的构成分析
2014/12/18 NodeJs
JS实现选择TextArea内文本的方法
2015/08/03 Javascript
理解javascript封装
2016/02/23 Javascript
js日期插件dateHelp获取本月、三个月、今年的日期
2016/03/07 Javascript
JavaScript快速切换繁体中文和简体中文的方法及网站支持简繁体切换的绝招
2016/03/07 Javascript
jQuery simpleModal插件的使用介绍
2016/08/30 Javascript
JavaScript中关于for循环删除数组元素内容时出现的问题
2016/11/21 Javascript
Angular实现一个简单的多选复选框的弹出框指令实例
2017/04/25 Javascript
JS块级作用域和私有变量实例分析
2019/05/11 Javascript
创建nuxt.js项目流程图解
2020/03/13 Javascript
jQuery实现鼠标放置名字上显示详细内容气泡提示框效果的方法分析
2020/04/04 jQuery
JavaScript常用工具函数汇总(浏览器环境)
2020/09/17 Javascript
浅述python中argsort()函数的实例用法
2017/03/30 Python
python写入并获取剪切板内容的实例
2018/05/31 Python
Python django使用多进程连接mysql错误的解决方法
2018/10/08 Python
Python 文本文件内容批量抽取实例
2018/12/10 Python
python模块常用用法实例详解
2019/10/17 Python
基于Python实现天天酷跑功能
2021/01/06 Python
html5 datalist 选中option选项后的触发事件
2020/03/05 HTML / CSS
美国克罗格超市在线购物:Kroger
2019/06/21 全球购物
教师自荐书
2013/10/08 职场文书
晚归检讨书
2014/02/19 职场文书
交通违章检讨书
2014/09/21 职场文书
2014年教师党员自我评价范文
2014/09/22 职场文书
年底个人总结范文
2015/03/10 职场文书
主婚人致辞精选
2015/07/28 职场文书
建国70周年的心得体会(2篇)
2019/09/20 职场文书
详解MySQL的半同步
2021/04/22 MySQL
Java中的Kotlin 内部类原理
2022/06/16 Java/Android