Отправка ZEND с аутентификацией SMTP - PullRequest
0 голосов
/ 14 апреля 2020

Мое приложение в настоящее время отправляет электронные письма, но они не проходят проверку подлинности SMTP, поэтому электронные письма отправляются в мусор. Есть ли способ добавить опции SMTP без изменения основной конфигурации?

 /* Mail Sender */
            $mail = new \Zend_Mail('utf-8');
            $mail->setFrom("XXX@XXX.com");
            $mail->addTo($adminMail);
            $mail->setSubject('My Subject');
            $mail->setBodyHtml('email content');
            $content = file_get_contents($filePath);
            $attachment = new \Zend_Mime_Part($content);
            $attachment->type = 'image/png'; // attachment's mime type
            $attachment->disposition = \Zend_Mime::DISPOSITION_ATTACHMENT;
            $attachment->encoding = \Zend_Mime::ENCODING_BASE64;
            $attachment->filename = 'image_' . $customerId . '.png';
            $mail->addAttachment($attachment);
            $mail->send();

1 Ответ

0 голосов
/ 14 апреля 2020

Попробуйте изменить свой код следующим образом:

$mail = new \Zend_Mail('utf-8');
$mail->setFrom("XXX@XXX.com");
$mail->addTo($adminMail);
$mail->setSubject('My Subject');
$mail->setBodyHtml('email content');
$content = file_get_contents($filePath);
$attachment = new \Zend_Mime_Part($content);
$attachment->type = 'image/png'; // attachment's mime type
$attachment->disposition = \Zend_Mime::DISPOSITION_ATTACHMENT;
$attachment->encoding = \Zend_Mime::ENCODING_BASE64;
$attachment->filename = 'image_' . $customerId . '.png';
$mail->addAttachment($attachment);

// create mail transport
$transport = new \Zend_Mail_Transport_Smtp(
    'smtp.yourserver.com',
    [
        'auth' => 'login',
        'port' => 'yoursmtpport',
        'username' => 'yourusername',
        'password' => 'yourpassword',
    ]
);

$mail->send($transport);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...