MaxLucky
@MaxLucky

Как убрать ошибку с пустым письмом при отправке с Php mailer?

Пытаюсь отправить подписанное сертификатом письмо. Однако при отправке с добавлением строк "$mail->sign" - письмо приходит пустым. Без них же всё нормально. В чём может быть проблема?

<?php
 */

require 'class.phpmailer.php';

//Create a new PHPMailer instance
$mail = new PHPMailer();
//Set who the message is to be sent from
//IMPORTANT: This must match the email address of your certificate.
//Although the certificate will be valid, an error will be thrown since it cannot be verified that the sender and the signer are the same person.
$mail->setFrom('from@example.com', 'First Last');
//Set an alternative reply-to address
$mail->addReplyTo('replyto@example.com', 'First Last');
//Set who the message is to be sent to
$mail->addAddress('example@mail.ru', 'John Doe');
//Set the subject line
$mail->Subject = 'PHPMailer mail() test';
//Read an HTML message body from an external file, convert referenced images to embedded,
//Convert HTML into a basic plain-text alternative body
$mail->msgHTML(file_get_contents('contents.html'), dirname(__FILE__));
//Replace the plain text body with one created manually
$mail->AltBody = 'This is a plain-text message body';
//Attach an image file
$mail->addAttachment('images/phpmailer_mini.png');

//Configure message signing (the actual signing does not occur until sending)
$mail->sign(
    'qwe.crt', //The location of your certificate file
    'qwe.key', //The location of your private key file
    '', //The password you protected your private key with (not the Import Password! may be empty but parameter must not be omitted!)
    '' //The location of your chain file
);

//Send the message, check for errors
if (!$mail->send()) {
    echo "Mailer Error: " . $mail->ErrorInfo;
} else {
    echo "Message sent!";
}

/**
 * REMARKS:
 * If your email client does not support S/MIME it will most likely just show an attachment smime.p7s which is the signature contained in the email.
 * Other clients, such as Thunderbird support S/MIME natively and will validate the signature automatically and report the result in some way.
 */
?>
  • Вопрос задан
  • 198 просмотров
Решения вопроса 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
скорее всего у вас отключен вывод ошибок уровня нотис, и сертификат не проходит проверку или что-то такое, при отладке приложения это плохая практика, как вариант - читайте лог ошибок.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы