加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

ecshop实现smtp发送邮件

发布时间:2020-12-13 02:23:42 所属栏目:PHP教程 来源:网络整理
导读:《PHP实例:ecshop实现smtp发送邮件》要点: 本文介绍了PHP实例:ecshop实现smtp发送邮件,希望对您有用。如果有疑问,可以联系我们。 使用ECShop的smtp方式发送邮件时,在cls_smtp类文件中,执行到get_data办法中的语句: PHP教程 代码如下: $line????=?fgets

《PHP实例:ecshop实现smtp发送邮件》要点:
本文介绍了PHP实例:ecshop实现smtp发送邮件,希望对您有用。如果有疑问,可以联系我们。

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

代码如下:

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

;时,发生超时错误.PHP教程

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

但打印出链接数据时,确实连上了.PHP教程

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

代码如下:

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,?$subject);
????????$content???=?ecs_iconv(EC_CHARSET,?$content);
????????$shop_name?=?ecs_iconv(EC_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实例:ecshop实现smtp发送邮件》是否对您有启发,欢迎查看更多与《PHP实例:ecshop实现smtp发送邮件》相关教程,学精学透。编程之家 52php.cn为您提供精彩教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读