phpMailer - localhost目前无法处理此请求。

时间:2016-05-06 13:07:06

标签: php phpmailer

我的localhost上有一个非常简单的HTML CSS和javaScript网站。我想做一个非常简单的联系表格。通常我通过插件使用WordPress来实现这一点,并且从未在普通网站上手动创建过电子邮件。

我已经从https://github.com/PHPMailer/PHPMailer/blob/master/class.phpmailer.php下载了class.phpmailper.php文件并将其放在我网站的根目录中。

在我的联系表格上,我做了一个简单的

if(isset($_POST['submit'])){

}

并尝试发送电子邮件。我已经在我的WordPress网站上添加了相同的SMTP详细信息,但是当我点击提交页面时只是说:

网站名称页面无效

envirofuel-redesign目前无法处理此请求。

HTTP错误500

这是提交表单时执行的代码:

if(isset($_POST['submit'])){

    require_once('class.phpmailer.php');

    $subject = 'test';
    $body_of_your_email = 'hello test body';
    $mail = new PHPMailer();

    $mail->IsSMTP();                       // telling the class to use SMTP

    $mail->SMTPDebug = 0;
    // 0 = no output, 1 = errors and messages, 2 = messages only.

    $mail->SMTPAuth = true;                // enable SMTP authentication
    $mail->SMTPSecure = "";              // sets the prefix to the servier
    $mail->Host = "I PUT MY SMTP HOST HERE";        // sets Gmail as the SMTP server
    $mail->Port = 587;                     // set the SMTP port for the GMAIL

    $mail->Username = "I PUT MY USERNAME HERE";  // Gmail username
    $mail->Password = "I PUT MY PASSWORD HERE";      // Gmail password

    $mail->CharSet = 'windows-1250';
    $mail->SetFrom ('info@example.com', 'Example.com Information');
    $mail->AddBCC ( 'sales@example.com', 'Example.com Sales Dep.');
    $mail->Subject = $subject;
    $mail->ContentType = 'text/plain';
    $mail->IsHTML(false);

    $mail->Body = $body_of_your_email;
    // you may also use $mail->Body = file_get_contents('your_mail_template.html');

    $mail->AddAddress ('I PUT MY PERSONAL EMAIL HERE', 'Matthew');
    // you may also use this format $mail->AddAddress ($recipient);

    if(!$mail->Send())
    {
        $error_message = "Mailer Error: " . $mail->ErrorInfo;
    } else
    {
        $error_message = "Successfully sent!";
    }

}

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

如果您的Wordpress网站能够发送电子邮件,则您的电子邮件服务器设置应为“确定”。

您可能需要将您的php配置为使用SMTP,尝试在所有之前添加:

ini_set('SMTP','localhost' ); 
ini_set('sendmail_from', 'email_account_you_want@your_domain.com');

如果有效,那么您可以修改php.ini以使这些设置成为全局。

[mail function]
SMTP = localhost
sendmail_from = email_account_you_want@your_domain.com