2013-07-17 108 views
0

我需要有人来帮助我:我试图使用PHP邮件()函数,但它不工作。我使用Windows Server 2008 R2(我真的在服务器新手)与IIS 7。这是我是如何的可配置SMTP(端口25开启):功能邮件()PHP

Deliver e-mailto SMTP server: 
    SMTP server: 
    smtp.1and1.es 
    Port: 25 
    Authentication settings: 
    Not required. 

我有可配置的php.ini这种方式:

[mail function] 
;For Win32 only. 
SMTP = smtp.1and1.es 
smtp_port = 25 
;For Win32 only. 
sendmail_from = [email protected] 

我的代码是这样的:

$name = $_POST['name']; 
$email = $_POST['email']; 
$subject = $_POST['subject']; 
$message = $_POST['message']; 
$to = '[email protected]'; 

if (mail($to, $subject, utf8_decode($message))){ 
    echo "Sent"; 
} else { 
    echo "Error"; 
}; 

我总是得到“错误” ......有什么我失踪?
我将不胜感激任何帮助。非常感谢。

+1

是否打开了错误报告?它应该给你一个详细的消息。 'error_reporting(E_ALL);' –

+0

这就是我得到的结果:30719 – Carl

+0

@Pekka웃表示,在代码中粘贴error_reporting后,屏幕上是否显示任何错误消息? –

回答

0

使用此标准的PHP邮件程序类。会帮助你很多。
而且很容易就可以配置你的任何域名。
https://github.com/PHPMailer/PHPMailer

+0

我总是得到消息无法发送。邮件错误:无法实例化邮件功能。 – Carl

+0

现在!!它的工作... – Carl

0

您有身份验证设置:不是必需的。但是,不smtp.1and1.es需要身份验证?

+0

你说得对,我已经改变它,但仍然不发送电子邮件 – Carl

+0

正在提供您的用户名和密码smtp.1and1.es? – mti2935