Как включить PHPMailer в oop для массовых рассылок? - PullRequest
0 голосов
/ 03 мая 2020

Я использую PHPMailer v6.1.5 здесь, в мае 2020 года, и нахожусь на общих серверах GoDaddy через cPanel. Я скопировал все файлы PHPMailer в их собственный каталог из моего каталога root. Я могу отправить одно письмо за раз, просто отлично. Но в тот момент, когда я вставил oop, отправляя 4-10 писем, он вылетает (что-то о неожиданном «использовании»). Я считаю, что я не могу использовать Composer в моем случае. Любые мысли о том, как я могу заставить его работать в al oop? Извиняюсь ... но в Stackoverflow есть много таких вопросов, уходящих в далёкие годы ... но, похоже, ни один из них не работает в моей ситуации.

Так вот мой код ...........

$path = '/home/myrootdirectory/public_html/PHPMailer/';
set_include_path(get_include_path() . PATH_SEPARATOR . $path);

// load all the PHPMailer classes
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require $path . '/src/Exception.php';
require $path . '/src/PHPMailer.php';
require $path . '/src/SMTP.php';

$mail = new PHPMailer(true);
$mail->From = $fromEmail;
$mail->FromName = $fromFullName;
$mail->addAddress($toEmail, $toFullName);
$mail->addBCC("admin@mycompany.com");
if ($fromSenderCopyYN=="Y") {
    $mail->addBCC($fromEmail);
}

// Send HTML or Plain Text email
$mail->isHTML(true);
$mail->Subject = $subject;
$mail->Body = $msg;
$mail->AltBody = $txtmsg;
if(!$mail->send()) { 
   // OK
}else{
   // Not OK
}

=======================================

Любая помощь будет очень ценится.

1 Ответ

0 голосов
/ 03 мая 2020

Ну, я решил это .. Я поставил следующий код до начала l oop ..

$path = '/home/myrootdirectory/public_html/PHPMailer/';
set_include_path(get_include_path() . PATH_SEPARATOR . $path);

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

, а затем изменил

require $path . '/src/Exception.php';
require $path . '/src/PHPMailer.php';
require $path . '/src/SMTP.php';

на

require_once $path . '/src/Exception.php';
require_once $path . '/src/PHPMailer.php';
require_once $path . '/src/SMTP.php';

Отлично работает сейчас.

...