PHPMailer-无法连接到SMTP

PHPMailer-无法连接到SMTP,smtp,phpmailer,outgoing-mail,Smtp,Phpmailer,Outgoing Mail,我试图通过PHPMailer从我的gmail发送邮件,但我收到以下错误: SMTP错误:无法连接到SMTP主机 我从以下位置下载了phpmailer类: 我已经尝试了30多个小时,所以我尝试了端口25465587的大多数组合。我甚至尝试过一些奇怪的东西,比如从我的SMTP用户名中删除@gmail.com,所以请帮帮我 <?php /** * Simple example script using PHPMailer with exceptions enabled * @package ph

我试图通过PHPMailer从我的gmail发送邮件,但我收到以下错误:

SMTP错误:无法连接到SMTP主机

我从以下位置下载了phpmailer类:

我已经尝试了30多个小时,所以我尝试了端口25465587的大多数组合。我甚至尝试过一些奇怪的东西,比如从我的SMTP用户名中删除@gmail.com,所以请帮帮我

<?php
/**
* Simple example script using PHPMailer with exceptions enabled
* @package phpmailer
* @version $Id$
*/

require '../class.phpmailer.php';

try {
    $mail = new PHPMailer(true); //New instance, with exceptions enabled

    $body             = file_get_contents('contents.html');
    $body             = preg_replace('/\\\\/','', $body); //Strip backslashes

    $mail->IsSMTP();                           // tell the class to use SMTP
    $mail->SMTPAuth   = true;                  // enable SMTP authentication
    $mail->SMTPSecure = 'ssl';
    $mail->Port       = 465;                    // set the SMTP server port
    $mail->Host       = "smtp.gmail.com"; // SMTP server
    $mail->Username   = "mymail@gmail.com";     // SMTP server username
    $mail->Password   = "mypass";            // SMTP server password

//  $mail->IsSendmail();  // tell the class to use Sendmail

    $mail->AddReplyTo("name@domain.com","First Last");

    $mail->From       = "name@domain.com";
    $mail->FromName   = "First Last";

    $to = "reciever@gmail.com";

    $mail->AddAddress($to);

    $mail->Subject  = "First PHPMailer Message";

    $mail->AltBody    = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test
    $mail->WordWrap   = 80; // set word wrap

    $mail->MsgHTML($body);

    $mail->IsHTML(true); // send as HTML

    $mail->Send();
    echo 'Message has been sent.';
} catch (phpmailerException $e) {
    echo $e->errorMessage();
}
?>

我试着从我的网页上通过php mailer发送电子邮件,但我也遇到了同样的问题。。然后我把我的代码上传到服务器上,然后它就工作了。。我认为PHPMailer可以在Web服务器上工作,但不能在本地主机上工作。。。尝试在Web服务器上上载代码,然后尝试。。。如果您的代码上载到服务器上,请使用此

<?php

       require_once "../class.phpmailer.php";

        $from = "<from.gmail.com>";
        $to = "<to.gmail.com>";
        $subject = "Hi!";
        $body = "Hi,hows goin??";

        $host = "ssl://smtp.gmail.com";
        $port = "465";
        $username = "myaccount@gmail.com";  //<> give errors
        $password = "password";

        $headers = array ('From' => $from,
          'To' => $to,
          'Subject' => $subject);
        $smtp = Mail::factory('smtp',
          array ('host' => $host,
            'port' => $port,
            'auth' => true,
            'username' => $username,
            'password' => $password));

        $mail = $smtp->send($to, $headers, $body);

        if (PEAR::isError($mail)) {
          echo("<p>" . $mail->getMessage() . "</p>");
         } else {
          echo("<p>Message successfully sent!</p>");
         }

    ?> 

我认为您犯的错误是您要求的类错误,您的要求应该加载
require_once'../phpmailerautoad.php'

PHPMailer类依赖于其他子类来处理发送邮件的其他方面。您需要的类更像是一个包装类,这将修复许多错误,或者至少为您提供更好的错误消息

我得到:致命错误:在第18行的/customers/1/6/f/contactfact.com/httpd.www/PHPMailer-master/test/testemail.php中找不到“邮件”类。我可以一次性获取您需要的文件吗?但在我看来,您使用的是PEAR Mail,而我使用的是PHPMailer。另外,请检查您的防火墙。。防火墙阻止smtp连接:)这是我的博客托管提供商。One.com已阻止除端口80外的每个端口。有没有办法绕过这个问题?请查阅以下内容: