如何将 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。
我正在使用 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。