Как использовать Sendinblue с PHPMailer - PullRequest
0 голосов
/ 09 июля 2019

Я настраиваю конфигурацию электронной почты с помощью PHPMailer и просто отлично работаю с локальной электронной почтой в моем офисе, но, поскольку я хочу использовать Sendinblue в качестве почтового API, я просто застрял, и он не работал.

Я пытался найти какое-то предложение, чтобы исправить это, но застрял.Кто-нибудь пытался выяснить, что я ищу в Sendinblue с PHPMailer?

С PHPMailer Library в фоновом режиме, я обычно использую этот код для запуска своей программы

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.

1 Ответ

1 голос
/ 09 июля 2019

Прежде всего, похоже, что вы используете старую версию PHPMailer и основали свой код на очень старом примере, поэтому upgrade .

Не выглядиткак будто вы даже пытаетесь использовать sendinblue;вы указываете свой скрипт на локальный почтовый сервер.Поскольку вы используете буквальный IP-адрес, SSL никогда не будет работать, потому что он не сможет проверить сертификат.

Если вы хотите использовать sendinblue напрямую из PHPMailer, вам нужно использовать SMTP-серверы sendinblue, и это будетбыть покрыты в их документации.Если они не предоставляют службу SMTP (как, скажем, mailgun), вам нужно будет использовать вместо них их HTTP API (у которого много документации ).Вы не можете использовать PHPMailer для разговора с этим, хотя вы можете использовать его для генерации сообщений для отправки, например, делая все, как вы сейчас , за исключением не звоните send();сделайте это вместо:

$message = $sendmail->getSentMIMEMEssage();

Это даст вам полностью отформатированное сообщение RFC822, готовое для отправки в HTTP API.

...