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 相关文章推荐
图书管理程序(二)
Oct 09 PHP
php 获取一个月第一天与最后一天的代码
May 16 PHP
PHP实现邮件群发的源码
Jun 18 PHP
php自定义apk安装包实例
Oct 20 PHP
PHP获取当前所在目录位置的方法
Nov 26 PHP
php函数实现判断是否移动端访问
Mar 03 PHP
PHP如何将XML转成数组
Apr 04 PHP
php制作基于xml的RSS订阅源功能示例
Feb 08 PHP
PHP实现防盗链的方法分析
Jul 25 PHP
PHP单例模式实例分析【防继承,防克隆操作】
May 22 PHP
PHP 扩展Memcached命令用法实例总结
Jun 04 PHP
php的lavarel框架中join和orWhere的用法
Dec 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文件上传的例子及参数详解
2013/12/12 PHP
浅析PHP开发规范
2018/02/05 PHP
Mootools 1.2教程(2) DOM选择器
2009/09/14 Javascript
取选中的radio的值
2010/01/11 Javascript
js随机颜色代码的多种实现方式
2013/04/23 Javascript
js 图片随机不定向浮动的实现代码
2013/07/02 Javascript
Jquery中给animation加更多的运作效果实例
2013/09/05 Javascript
jQuery实现的类似淘宝网站搜索框样式代码分享
2015/08/24 Javascript
详解微信小程序中的页面代码中的模板的封装
2017/10/12 Javascript
Vue动态控制input的disabled属性的方法
2018/06/26 Javascript
浅谈vux之x-input使用以及源码解读
2018/11/04 Javascript
Python修改MP3文件的方法
2015/06/15 Python
利用Python进行异常值分析实例代码
2017/12/07 Python
python文本数据相似度的度量
2018/03/12 Python
python list是否包含另一个list所有元素的实例
2018/05/04 Python
Python读取csv文件分隔符设置方法
2019/01/14 Python
解决python Markdown模块乱码的问题
2019/02/14 Python
python 协程中的迭代器,生成器原理及应用实例详解
2019/10/28 Python
django model object序列化实例
2020/03/13 Python
HTML5 对各个标签的定义与规定:body的介绍
2012/06/21 HTML / CSS
白俄罗斯女装和针织品网上商店:Presli.by
2019/10/13 全球购物
如何撰写岗位职责
2014/02/01 职场文书
药学专业学生的自我评价分享
2014/02/06 职场文书
师德建设实施方案
2014/03/21 职场文书
党校个人自我鉴定范文
2014/03/28 职场文书
房产买卖委托公证书
2014/04/04 职场文书
授权委托书
2014/07/31 职场文书
关于保护环境的建议书
2014/08/26 职场文书
新生开学寄语大全
2015/05/28 职场文书
西游降魔篇观后感
2015/06/15 职场文书
升学宴学生致辞
2015/09/29 职场文书
观看《筑梦中国》纪录片心得体会
2016/01/18 职场文书
来探秘“德国中小企业”的成功之道
2019/07/26 职场文书
Python Pandas 删除列操作
2022/03/16 Python
vmware虚拟机打不开vmx文件怎么办 ?vmware虚拟机vmx文件打开方法
2022/04/08 数码科技
Java 中的 Lambda List 转 Map 的多种方法详解
2022/07/07 Java/Android