2012-03-18 2 views
0

Я пытаюсь настроить почту php с грушей. Я пробовал и исследовал последние 4 часа без успеха.Как настроить почтовую почту?

Я использую этот код

<?php 
require_once "Mail.php"; 

$from = "Sandra Sender <[email protected]>"; 
$to = "Ramona Recipient <[email protected]>"; 
$subject = "Hi!"; 
$body = "Hi,\n\nHow are you?"; 

$host = "ssl://mail.example.com"; 
$port = "465"; 
$username = "smtp_username"; 
$password = "smtp_password"; 

$headers = array ('From' => $from, 
  'To' => $to, 
  'Subject' => $subject); 
$smtp = Mail::factory('smtp', 
  array ('host' => $host, 
    'port' => $port, 
    'auth' => true, 
    'username' => $username, 
    'password' => $password)); 

$mail = $smtp->send($to, $headers, $body); 

if (PEAR::isError($mail)) { 
  echo("<p>" . $mail->getMessage() . "</p>"); 
 } else { 
  echo("<p>Message successfully sent!</p>"); 
 } 
?> 

и 'require_once "mail.php"' дает эту ошибку:

Предупреждение: require_once (mail.php) [function.require- один раз]: не удалось открыть поток: нет такого файла или каталога в /home/creatif2/public_html/mail.php в строке 3 Неустранимая ошибка: require_once() [function.require]: Не удалось открыть «Mail.php» (include_path = ': php /') в /home/creatif2/public_html/mail.php в строке 3

груша и груша почты установлен

Auth_SASL 1.0.6 Update Переустановка Uninstall Показать Docs Почта 1.2.0 Update Переустановка Uninstall Показать Docs Net_SMTP 1.6.1 Update Переустановка Uninstall Показать Docs Net_Socket 1.0.10 Обновление Переустановка Uninstall Show Docs

И я совершенно смущен. Я думаю, что моя проблема заключается в установке пути включения, но я не получаю нигде с ним.

Пакеты : находятся в папке php - (например, home/my_user/php/Mail.php, я использую Justhost).

Текущая конфигурация .:/USR/Библиотека/PHP:/USR/местные/Библиотека/PHP

Может кто-то пожалуйста, объясните мне, как ссылаться на Mail.php файл правильно? Застряли здесь все утро и днем.

Благодаря

ответ

0

Ваша проблема заключается в том, что вы не используете правильный путь в включаемый. Если предположить, что включают в себя путь начинается в корневой каталог документов, вы должны использовать:

require_once "/home/my_user/php/Mail.php"; 

Хотя это может занять некоторое тестирование, чтобы найти правильный путь для требуют

+0

Как найти правильный путь? Я ссылался на него через $ _SERVER ['DOCUMENT_ROOT']. «/../php», который должен быть прав, и я получаю эту ошибку: Warning: require_once (PEAR.php) [function.require-once]: не удалось открыть поток: нет такого файла или каталога в/home/creatif2/php /Mail.php в строке 46 Неустранимая ошибка: require_once() [function.require]: Не удалось открыть «PEAR.php» (include_path = '/ home/creatif2/public_html /../ php') в/home/creatif2/php/Mail.php в строке 46 – Raekye

+0

Проблема в том, что Mail.php открывается правильно, но внутри Mail.php есть вызов PEAR.php, который не входит в комплект правильно. Вы должны добавить '/ home/creatif2/php /' в ваш путь include с * set_include_path(); * – aurbano

+0

Я добавил set_include_path, но я все равно получаю ** Warning: require_once (PEAR.php) [function.require-once]: не удалось открыть поток: нет такого файла или каталога в /home/creatif2/php/Mail.php в строке 46 **. На самом деле, я не могу найти PEAR.php в любом месте - где он должен быть расположен? Неустранимая ошибка: require_once() [function.require]: Не удалось открыть «PEAR.php» (include_path = '/ home/creatif2/php /') в /home/creatif2/php/Mail.php в строке 46 – Raekye

0

У меня была такая же проблема при попытке отправить сообщение электронной почты , Вам нужно установить пакет Pear Mail со всеми зависимостями, я не смогу установить до переустановки, переустановил диспетчер пакетов PEAR, см. http://pear.php.net/manual/en/installation.getting.php. Я уверен, что это поможет

+0

Я просто прошел через все это. На моем хосте был установлен пакетный менеджер PEAR, но PEAR сам не был! Поэтому мне пришлось установить PEAR и Mail для работы скрипта. –

Смежные вопросы