2014-09-30 39 views
1

我想用Gmail smtp发送电子邮件,但我不发送任何邮件。 我也没有收到任何错误,我只是得到一个空白页面。 这是我的代码,我希望你能帮助我。Gmail smtp不发送我的电子邮件

<?php 
require 'class.phpmailer.php'; 
$mail = new PHPMailer; 
$mail->isSMTP(); 
$mail->SMTPDebug = 2; 
$mail->Debugoutput = 'html'; 
$mail->Host = 'smtp.gmail.com'; 
$mail->Port = 465; 
$mail->SMTPSecure = 'ssl'; 
$mail->SMTPAuth = true; 
$mail->Username = "MyEmail"; 
$mail->Password = "Mypassword"; 
$mail->setFrom('MyEmail'); 
$mail->addReplyTo('MyEmail'); 
$mail->addAddress('MyEmail'); 
$mail->Subject = 'PHPMailer GMail SMTP test'; 
$mail->Body = 'This is a plain-text message body'; 
if (!$mail->send()) { 
    echo "Mailer Error: " . $mail->ErrorInfo; 
} else { 
    echo "Message sent!"; 
} 
?> 

请注意,我输入了正确的电子邮件和密码。

+0

让它有U运行这个本地或服务器上?如果它是第一个可能是端口被阻塞 – DarkBee 2014-09-30 11:14:48

+0

不,我没有在本地服务器上运行它。但是,如果它会被阻止,我不应该收到一个错误? – user2479441 2014-09-30 11:16:09

+1

尝试通过输入错误的密码和用户名来查看是否有任何错误。如果你得到一个错误,接下来的事情是检查php_info();查看是否安装了任何sendemail应用程序。还要检查error_reporting(E_ALL);和display_errors = On – peterpeterson 2014-09-30 11:20:46

回答

1

默认情况下,PHPMailer将使用php的mail()函数(sendmail)发送邮件。您需要包括smtp类的PHPMailer到能够使用SMTP

require 'class.phpmailer.php'; 
require 'class.smtp.php'; 

发送邮件,你可以从github

+0

谢谢你解决了他没有回应任何事情的问题。我有一个新的问题,我会研究。 – user2479441 2014-09-30 11:38:38