6

我正在尝试使用以下代码发送电子邮件,但出现内部服务器错误。我不知道为什么我会遇到这个麻烦。

PHP代码:

<?php
    $mail = new PHPMailer();  // create a new object
    $mail->IsSMTP(); // enable SMTP
    $mail->SMTPDebug = 0;  // debugging: 1 = errors and messages, 2 = messages only
    $mail->SMTPAuth = true;  // authentication enabled
    $mail->SMTPSecure = 'ssl'; // secure transfer enabled REQUIRED for Gmail
    $mail->Host = 'smtp.gmail.com';
    $mail->Port = 465; 
    $mail->Username = 'myemail@gmail.com';  
    $mail->Password = "mypasswordhere";           
    $mail->SetFrom($from, $from_name);
    $mail->Subject = $subject;
    $mail->Body = $body;
    $mail->AddAddress('myemail@gmail.com');
    if(!$mail->Send()) {
        $error = 'Mail error: '.$mail->ErrorInfo; 
        return false;
    } else {
        $error = 'Message sent!';
        return true;
    }
?>

解压后,我只是将此文件作为 test.php 放在 PhpMail 文件夹中。像下面这样

在此处输入图像描述

4

1 回答 1

6

您错过了一行中的单引号:

$mail->Password = 'mypasswordhere';     

后面的错误可能是 PHP 解析错误,显示在您的 Apache 错误日志中。

于 2013-05-22T05:54:24.717 回答