如何将 Sendinblue 与 PHPMailer 一起使用

How Use Sendinblue with PHPMailer

我正在使用 PHPMailer 设置电子邮件配置,并且在我办公室使用本地电子邮件时效果很好,但是由于我想将 Sendinblue 用作电子邮件 API 我只是卡住了,但没有成功。

我试图找到一些修复它的建议但卡住了。有没有人试图弄清楚我在用 PHPMailer 寻找关于 Sendinblue 的东西?

在后台使用 PHPMailer 库,我通常将此代码用于 运行 我的程序

function send_mail2($from,$from_name,$to,$to_name,$cc,$cc_name,$cc2,$cc_name2,$cc3,$cc_name3,$subjek,$template,$is_smtp,$usermail,$password){
    $sendmail = new PHPMailer();
    if($is_smtp = 'Y'){
        $sendmail->IsSMTP(); // enable SMTP
        // $sendmail->SMTPDebug = 1; // debugging: 1 = errors and messages, 2 = messages only
        $sendmail->SMTPAuth = true; // authentication enabled
        $sendmail->SMTPSecure = 'ssl'; // secure transfer enabled REQUIRED for GMail
        $sendmail->Host = "192.x.x.x";
        $sendmail->Port = 465; // or 587
        $sendmail->Username = "xxx@xxx.com";
        $sendmail->Password = "xxx";
    }
    $sendmail->setFrom("xxx@xxx.com","xxx@xxx.com"); //email pengirim
    $sendmail->addReplyTo("xxx@xxx.com","xxx@xxx.com"); //email replay
    $sendmail->addAddress($to,$to_name); 
    $sendmail->AddCC($cc,$cc_name); 
    $sendmail->AddCC($cc2,$cc_name2); 
    $sendmail->AddCC($cc3,$cc_name3); 
    $sendmail->Subject = $subjek; 
    $sendmail->Body=$template; 
    $sendmail->isHTML(true);
    if(!$sendmail->Send()) {
        return "failed";                  
    }else{ 
      return "success";
    }
}

我只是想了解如何将 Sendinblue 与 PHPMailer 一起使用。

首先,看起来您使用的是旧版本的 PHPMailer,并且您的代码基于一个非常古老的示例,所以 upgrade.

看起来您甚至没有尝试使用 sendinblue;您将脚本指向本地邮件服务器。因为您使用的是文字 IP 地址,SSL 将永远无法工作,因为它无法验证证书。

如果您想直接从 PHPMailer 使用 sendinblue,您需要使用 sendinblue 的 SMTP 服务器,这将在他们的文档中介绍。如果他们不提供 SMTP 服务(比如 mailgun 提供),您将需要改用他们的 HTTP API(其中有 plenty of documentation)。您不能使用 PHPMailer 与之对话,尽管您可以使用它来生成要发送的消息,例如,按照您当前的方式执行所有操作 except 不要调用 send();改为这样做:

$message = $sendmail->getSentMIMEMEssage();

这将为您提供 fully-formatted RFC822 消息,准备提交给 HTTP API。