php - smtp pear Mail.php包括

时间:2011-07-05 20:29:30

标签: php email smtp pear

这可能是一个简单的但现在我很困惑。我基本上使用相同的框架工作,我为前期项目和改变皮肤。

我曾尝试测试电子邮件功能,但无法正常工作,这是错误:

  

警告:require_once()   [function.require-once]:open_basedir   限制有效。   文件(../../../../ php / Mail.php)不是   在允许的路径内:   (/家/ amatoita:/ usr / lib中/ PHP:在/ usr /本地/ LIB / PHP:/ TMP)

由于某种原因似乎我不允许在这里???

所以我试过

  

/usr/lib/php/Mail.php

     

/home/amatoita/php/Mail.php

     

/usr/local/lib/php/Mail.php

引发了以下错误:

  

需要打开失败   '邮件/ mimePart.php'   (include_path中= ':/ usr / lib中/ PHP:在/ usr /本地/ LIB / PHP')   在/home/amatoita/php/Mail/mime.php

任何人都可以看到我出错的地方吗?

2 个答案:

答案 0 :(得分:2)

我可以按照Mark's Tech Stuff blog上的PEAR安装说明解决此问题。

我的问题是梨的Mail模块没有包含在标准的Fedora安装中。

然后我使用了一些代码from the PEAR site

<?php

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

$text = 'Text version of email';
$html = '<html><body>HTML version of email</body></html>';
$file = '/home/richard/example.php';
$crlf = "\n";
$hdrs = array(
          'From'    => 'you@yourdomain.com',
          'Subject' => 'Test mime message'
          );

$mime = new Mail_mime(array('eol' => $crlf));

$mime->setTXTBody($text);
$mime->setHTMLBody($html);
$mime->addAttachment($file, 'text/plain');

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

$mail =& Mail::factory('mail');
$mail->send('postmaster@localhost', $hdrs, $body);

?>

现在我的电子邮件以HTML格式发送了。希望对你有所帮助。

答案 1 :(得分:0)

您需要将该软件包安装在include_path中列出的某个目录中。这意味着(最有可能),你希望它是:

/home/amatoita/php/Mail.php

并在

中使用mimePart.php
/home/amatoita/php/Mail/mimepart.php