如何设置Pear邮件?

时间:2012-03-18 19:03:41

标签: php email smtp pear

我正在尝试用pear设置php邮件。我在过去的4个小时里一直在努力研究并没有成功。

我正在使用此代码

<?php
 require_once "Mail.php";

 $from = "Sandra Sender <sender@example.com>";
 $to = "Ramona Recipient <recipient@example.com>";
 $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-once]:无法打开流:第3行/home/creatif2/public_html/mail.php中没有此类文件或目录 致命错误:require_once()[function.require]:在第3行的/home/creatif2/public_html/mail.php中打开所需的'Mail.php'(include_path =':php /')失败

安装了梨和梨邮件

Auth_SASL 1.0.6更新重新安装卸载Show Docs 邮件1.2.0更新重新安装卸载显示文档 Net_SMTP 1.6.1更新重新安装卸载显示文档 Net_Socket 1.0.10更新重新安装卸载显示文档

我对此感到非常困惑。我认为我的问题是设置包含路径,但我没有随处可见。

位于php文件夹中 - (例如home / my_user / php / Mail.php,我正在使用Justhost)。

目前的配置是 的:/ usr / lib中/ PHP:在/ usr / local / lib目录/ PHP的

有人可以向我解释如何正确引用Mail.php文件吗?整个上午和下午都被困在这里。

由于

2 个答案:

答案 0 :(得分:0)

您的问题是您没有在包含中使用正确的路径。假设您的包含路径在文档根目录中开始,您应该使用:

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

虽然可能需要一些测试才能找到require

的正确路径

答案 1 :(得分:0)

尝试发送电子邮件时遇到了同样的问题。您必须安装具有所有依赖项的Pear Mail包,我无法安装,直到重新安装重新安装PEAR包管理器,请参阅http://pear.php.net/manual/en/installation.getting.php我确定这将有所帮助