PHPMailer,没有Email,没有Error



我想从我的网站空间发送一个大邮件。此邮件包含许多通过表单输入的变量。

首先,我尝试了php mail(),但我没有收到任何邮件。我使用mail()在我的网站的另一部分,并从这个脚本我收到一封邮件。所以这个函数应该在我的网页空间上工作。

对于大型邮件,我尝试使用PHPMailer,因为mail()没有像预期的那样工作。PHPMailer的代码是:

require 'phpmailer/PHPMailerAutoload.php';
$mail = new PHPMailer;
$mail->isSMTP();
$mail->Host = 'xxx.xxx.de'; 
$mail->SMTPAuth = true;     
$mail->Port = 587;                          
$mail->Username = 'xxx';              
$mail->Password = 'xxx';                          
$mail->SMTPSecure = 'tls';                        
$mail->From = 'xxx@xxx.de';
$mail->FromName = 'xxx';
$mail->addAddress('xxx@xxx.de', 'xxx xxx');
$mail->WordWrap = 50;                                
$mail->isHTML(true);                                
$mail->Subject = $subject;
$mail->Body    = $mess;
$mail->AltBody = $mess;
if(!$mail->send()) {
    echo 'Message could not be sent.';
    echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
    echo 'Message has been sent';
}

脚本完成后,我没有得到一个错误,我没有收到邮件。这有什么问题呢?我如何检查,为什么我的PHPMailer不工作?需要的路径是绝对的还是相对的?

试试:

//……另一个选项码$mail->SMTPDebug = 2;//启用SMTP调试信息(用于测试)//……另一个代码转储(邮件->发送());

每次打开这个php-page,邮件结果都会让您知道。你错过了什么

使用try/catch:

$mail = new PHPMailer(true); // enable exceptions
try {
    $mail->isSMTP();
   //....
}
catch (phpmailerException $e) {
    echo $e->errorMessage();
}

相关内容

最新更新