2016-11-19 10 views
1

Я пытаюсь отправить транзакционные письма с PEAR. Мой код PHP:PHP PEAR Mail Fatal Error

include('Mail.php'); 
include('Mail/mime.php'); 

$text = 'test text'; 
$html = '<html><body><b>HTML</b></body></html>'; 
$crlf = "\n"; 
$hdrs = array(
      'From' => '***@***.com', 
      'Subject' => 'Test - PEAR mail' 
     ); 

$mime = new Mail_mime($crlf); 
$mime->setTXTBody($text); 
$mime->setHTMLBody($html); 

$body = $mime->get(); 
$hdrs = $mime->headers($hdrs); 

$mail = Mail::factory('smtp', 
array ('host' => 'mail.***.com', 
    'auth' => true, 
    'username' => '***@***.com', 
    'password' => '***')); 

$mail->send(***@***.com, $hdrs, $body); 

Результат:

"Фатальная ошибка: Вызов неопределенной метод PEAR :: RaiseError() в /home4/good7/php/Net/SMTP.php в строке 349"

Я посмотрел на линии 349 в SMTP.php:

return PEAR::raiseError('Invalid response code received from server', $this->code); 

Я предполагаю, что ошибка в моем коде, а не в SMTP.php, но я не могу найти его.

Этот сайт находится на общедоступном хостинге.

Любое понимание оценено.

ответ

1

Похоже, что у вас нет необходимого модуля PEAR. Находясь на виртуальном хостинге, сначала проверьте у вас есть PEAR правильно установлены после их собственного учебника: https://pear.php.net/manual/en/installation.checking.php

И после этого, если он не установлен правильно, следовать общим хост-учебник, принимая в счете вы можете быть ограничены вашим хостинг-провайдера в действиях, которые вам необходимо выполнить: https://pear.php.net/manual/en/installation.shared.php

+0

Спасибо, что указал мне в правильном направлении. Оказалось, что это ошибка с включением пути. – blogo