我正在尝试修改使用 PHP 从表单通过电子邮件发送数据的 TemplateMonster 模板。它默认使用 localhost 作为电子邮件服务器,但我的客户已经在使用 gmail 的邮件交换服务器并且喜欢这种方式。我正在使用这个问题的最佳答案中的代码:SO question
除了主机将 PEAR 和 PHP 安装到预定义的文件夹并且我在子域上工作外,我认为我已经设置得很好。尽管我修改了 php.ini 以尝试包含正确的路径,但我收到有关无法找到 mail.php 的错误。这是我的错误(为了保护我客户的隐私而更改了一些名称):
[2012 年 11 月 8 日 10:52:15] PHP 警告:require_once(../../mail.php) [function.require-once]:无法打开流:/中没有这样的文件或目录home6/clientname/public_html/subdomainname/bin/contactFormHandler.php 第 3 行 [2012 年 11 月 8 日 10:52:15] PHP fatal error :require_once() [function.require]: 需要打开失败 '../../mail.php' (include_path='.:/usr/lib64/php:/usr/lib/php:/usr/share/pear:/usr/php') 在/home6/clientname/public_html/subdomainname/bin/contactFormHandler.php 第 3 行
这是树: /home6/clientname/php/mail.php 是我要包含的文件 /home6/clientname/public_html/subdomainname/bin/contactFormHandler.php 是抛出错误的文件
这是我来自 contactFormHandler.php 的代码,其中包括: require_once "mail.php";
我已经尝试了各种迭代,例如“../../../php/mail.php”,但都无济于事。关于我需要做什么以便子域上的 PHP 文件可以“看到”我试图包含的 PEAR 文件的任何建议?
谢谢!
最佳答案
试试 Mail.php 而不是 mail.php
PEAR 包的文件名为 Mail.php,Unix/Linux 系统区分大小写。
关于PHP 在 Bluehost 上使用 PEAR Mail 时包含路径问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13301087/