Я создал простую таблицу log
, где я вставляю записи, если письма не были отправлены.Не удалось получить полный журнал ошибок SMTP PHP mailer
mysql> describe log;
+--------+-----------+------+-----+---------------------+-----------------------------+
| Field | Type | Null | Key | Default | Extra |
+--------+-----------+------+-----+---------------------+-----------------------------+
| id_log | int(11) | NO | PRI | NULL | auto_increment |
| error | text | YES | | NULL | |
| time | timestamp | NO | | 0000-00-00 00:00:00 | on update CURRENT_TIMESTAMP |
+--------+-----------+------+-----+---------------------+-----------------------------+
И на моей стороне PHP, протоколирование ошибок, как это:
foreach ($arrayWithMails as $key => $value) {
$mail->addAddress($value);
if (!$mail->send())
{
put('message', $mail->ErrorInfo); //store in session
// echo $mail->ErrorInfo;
}
else {
/* Add email from array in session to be displayed at main page */
put('emailAddresses', $arrayWithMails); //Store in session
}
$mail->ClearAllRecipients();
}
$log->logError($_SESSION['message']);
Он вызывает метод в моем классе, который проходит строку в качестве параметра, и вставляет в БД.
Однако все мои журналы ищут так:
mysql> select * from log;
+--------+------------------------------------------------------------------------------------+---------------------+
| id_log | error | time |
+--------+------------------------------------------------------------------------------------+---------------------+
| 1 | SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting | 2016-10-21 15:08:30 |
| 2 | 1 | 2016-10-21 15:12:04 |
| 3 | 1 | 2016-10-21 15:13:42 |
| 4 | SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting | 2016-10-21 15:14:14 |
| 5 | SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting | 2016-10-21 15:17:02 |
| 6 | SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting | 2016-10-21 15:18:22 |
| 7 | SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting | 2016-10-21 15:28:02 |
| 8 | SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting | 2016-10-21 15:28:53 |
+--------+------------------------------------------------------------------------------------+---------------------+
И мой SMTP отладки установлен в 4
. Пробовал с 2
, а также - те же результаты.
Если f.e. Я делаю базовое эхо $mail->ErrorInfo
. Я получаю полный журнал с ошибками, но когда я хочу сохранить эту полную информацию о журнале в БД, я получаю только: SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
То же самое происходит, если я попытаюсь сохранить эту ошибку в $ _SESSION var.
Любая идея, как хранить полный журнал? Спасибо!
привет и спасибо за помощь. Я не уверен, как реализовать свое решение в моем коде. Я отредактировал свой вопрос. – fugitive