поскольку мой провайдер переходит на PHP 5.4, кажется, что мои письма, созданные с помощью php, больше не хотят отправляться.
есть ли изменения в php mail с 5.4?
в 5.3 мой код работает нормально:
$mime->setHTMLBody($html);
$mime->setTxtBody($text);
$pro_hdrs = array(
'Content-Type' => 'text/html; charset=iso-8859-1',
'Content-Transfer-Encoding' => '8bit\r\n',
'Date' => $mydate,
'From' => '"Test"<[email protected]>',
'To' => $email,
'Reply-To' => $reply,
'Subject' => $mysubject,
);
$pro_params["host"] = 'somehost.com';
$pro_params["auth"] = TRUE;
$pro_params["username"] = 'someuser';
$pro_params["password"] = 'somepw';
$body = $mime->get();
$pro_hdrs = $mime->headers($pro_hdrs);
$pro_mail =& Mail::factory('smtp', $pro_params);
$pro_mail->send($email, $pro_hdrs, $body);
Надеюсь, вы можете помочь!
Ура,
Том
Удалить &
из следующей строки:
$pro_mail =& Mail::factory('smtp', $pro_params);
так становится:
$pro_mail = Mail::factory('smtp', $pro_params);
Это просто устарело. Интересно, что это не подняло E_DEPRECATED
ошибка.
Если это не ваша производственная среда, вы можете включить их.
Других решений пока нет …