#php #phpmailer
#php #phpmailer
Вопрос:
У меня возникла проблема с использованием класса PHPMailer в laravel, иногда электронное письмо отправляется, и в очень редких случаях оно не отправляется, но после функции $mail-> send() весь остальной скрипт работает нормально, и он даже не выдает никаких ошибок, и я не могу выяснить, что не так. ниже приведен мой код.
$to_email = '';
$from_email = 'banca@jubileegeneral.com.pk';
$mail = new PHPMailer();
try {
$mail->SMTPOptions = array(
'ssl' => array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)
);
//Server settings
$mail->SMTPDebug = 1; // Enable verbose debug output
$mail->isSMTP(); // Send using SMTP
$mail->Host = 'smtp.something.com.pk'; // Set the SMTP server
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = 'something@gmail.com'; // SMTP username
$mail->Password = 'xyz'; // SMTP password
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
$mail->Port = 25; // TCP port to connect to
//Recipients
$mail->setFrom($from_email, 'TESTING');
$mail->addAddress(Auth::user()->email);
$mail->addBCC('something@abc.com.pk');
$mail->isHTML(true);
$mail->Subject = 'XYZ ';
$mail->Body = 'Hey';
$mail->AltBody = '';
$mail->send();
Комментарии:
1. Если иногда письма могут быть отправлены, но иногда это не удается, тогда я предлагаю вам проверить, применяют ли получатели очень строгую, ограничительную политику спама в случаях сбоев исходящей почты.
2. Неудивительно, что вы не видите, что что-то идет не так, потому что у вас нет обработки ошибок, вы не проверяете возвращаемые значения, а ваш уровень отладки недостаточно высок, чтобы показать вам, что говорит сервер. Установите
$mail->SMTPDebug = 2;
, но также посмотрите на любой из примеров, предоставляемых с PHPMailer, чтобы узнать, как обрабатывать сообщения об ошибках, включать исключения и т. Д.3. Просто любопытно, почему вы используете PHPMailer вместо встроенных почтовых функций ?