0

我目前有以下内容,但它不起作用。(通常我有正文和标题信息,但没有任何作用)

mail("idealvisions@live.com","Nieuw offerte aanvraag","test");

我们将在我的服务器上运行它,因为我正在运行 php 5 或更高版本,那里没有问题。但我相信联系页面来自运行 php 4.4的客户端。现在客户真的在推动我修复这个问题,但它似乎无法修复。我已经尝试了一切

这里有什么问题?是php版本吗?

我也检查了 phpinfo 并有这个

sendmail_from 无值 无值

sendmail_path /usr/local/bin/bgc_webhosting_mailer.sh /usr/local/bin/bgc_webhosting_mailer.sh
4

4 回答 4

1

这听起来像客户端的服务器没有正确设置邮件发送处理程序

于 2009-09-20T18:15:38.167 回答
1

一些提供托管的 ISP 和一些免费的托管平台禁用了邮件功能,您可以尝试以下操作:

error_reporting(E_ALL);
if (mail ('you@yourdomain.com', 'Test subject', 'Test Body')){
echo 'Mail sent';
}else{
echo 'Mail not sent';
}

如果他们的服务器上的 mail() 存在问题,您可以考虑在其中一台服务器上发布邮件表单,然后将它们退回到客户端服务器上的感谢页面。

于 2009-09-20T18:19:40.000 回答
1

从 sendmail 路径,您的主机使用自定义 sendmail 程序/shell 脚本。

由于 sendmail from 没有设置,你必须在 mail() 函数中设置它,除非它被硬编码/usr/local/bin/bgc_webhosting_mailer.sh,在这种情况下你应该询问主机。

示例设置发件人:

mail('recepient@example.com', 'Test subject', 'Test Body', "from:sender@example.com\n");

如果 mail() 函数确实不可用,请向您的主机询问替代方案,例如他们的本地 SMTP 服务器。

然后,您可以使用本地 SMTP 服务器发送电子邮件。可能最简单的方法是下载一个支持通过 SMTP 发送的电子邮件库,例如 PEAR Mail 或 SwiftMailer。

梨:http ://pear.php.net/package/ 邮件 斯威夫特:http ://swiftmailer.org/

如果您的主机不提供 SMTP 服务器,您可能应该寻找不同的主机。但是,您始终可以使用免费的电子邮件服务,例如 Gmail 或 Yahoo,并通过他们的 SMTP 发送邮件。

于 2009-09-20T19:11:49.770 回答
0

还要检查 SeLinux,它可以防止 Apache 产生的任何线程发送邮件。在这种情况下,您不会收到任何错误,也不会收到邮件。

于 2009-09-20T18:32:13.843 回答