SMTP->;错误:无法连接到PHP malier中的服务器:(0)

SMTP->;错误:无法连接到PHP malier中的服务器:(0),php,Php,下面是我的php电子邮件代码,它在今天仍然运行良好 require_once('_lib/class.phpmailer.php'); include 'func/db_connect.php'; error_reporting(E_ALL); ini_set('display_errors', 1); function supervisorMail(){ global $error; $mail = new PHPMailer(); $mail->IsSMTP

下面是我的php电子邮件代码,它在今天仍然运行良好

require_once('_lib/class.phpmailer.php');
include 'func/db_connect.php';
error_reporting(E_ALL);
ini_set('display_errors', 1);

function supervisorMail(){

    global $error;
    $mail = new PHPMailer();
    $mail->IsSMTP();
    $mail->SMTPDebug = 2;
    $mail->SMTPAuth = true;
    $mail->SMTPSecure = 'ssl';
    $mail->Host = 'smtp.gmail.com';
    $mail->Port = 465;
    $mail->Username = "*****@gmail.com";
    $mail->Password = "*****";
    $mail->SetFrom("****@gmail.com", "Employee Leave Management System");
}
但现在,如果不更改代码,它将无法工作,并且会出现以下错误

SMTP -> ERROR: Failed to connect to server: (0) SMTP Error: Could not connect to SMTP host. Message could not be sent. Mailer Error: SMTP Error: Could not connect to SMTP host.

我找不到解决办法。我怎样才能解决这个问题

在我的例子中,是PHP中缺少SSL支持导致了这个错误

所以我启用了extension=php\u openssl.dll


$mail->SMTPDebug=1也暗示了这个解决方案。

在我的例子中,是PHP中缺少SSL支持导致了这个错误

所以我启用了extension=php\u openssl.dll


$mail->SMTPDebug=1也暗示了这个解决方案。

试试这个,它会有用的

$mail = new PHPMailer(); 
$mail->IsSMTP(); 
$mail->SMTPDebug = 1; 
$mail->SMTPAuth = true; 
$mail->SMTPSecure = 'ssl'; 
$mail->Host = "smtp.gmail.com";
$mail->Port = 465; 
$mail->IsHTML(true);
$mail->Username = "*******@gmail.com";
$mail->Password = "*******";

你必须在gmail中进行更改。在帐户权限部分,找到对不太安全的应用程序的访问权限并启用它。

试试这个,它会起作用的

$mail = new PHPMailer(); 
$mail->IsSMTP(); 
$mail->SMTPDebug = 1; 
$mail->SMTPAuth = true; 
$mail->SMTPSecure = 'ssl'; 
$mail->Host = "smtp.gmail.com";
$mail->Port = 465; 
$mail->IsHTML(true);
$mail->Username = "*******@gmail.com";
$mail->Password = "*******";

您必须在gmail中进行更改。在帐户权限部分,找到对不太安全的应用程序的访问权限并启用它。

我认为您应该尝试通过如下方式更改主机:

$mail->Host       = "ssl://smtp.gmail.com";
$mail->Port       = 465;
$mail->SetFrom('contact@example.com', 'User');

$mail->AddReplyTo("example@gmail.com', 'Name Here");

$mail->Subject    = "Contact us Email";

$mail->MsgHTML($body);

$address = "user@example.com";
$mail->AddAddress($address, "new user");

if(!$mail->Send()) {
  echo "Error in Sending email: " . $mail->ErrorInfo;
} else {
  echo "Message sent!";
}
还可以像这样设置其他参数:

$mail->Host       = "ssl://smtp.gmail.com";
$mail->Port       = 465;
$mail->SetFrom('contact@example.com', 'User');

$mail->AddReplyTo("example@gmail.com', 'Name Here");

$mail->Subject    = "Contact us Email";

$mail->MsgHTML($body);

$address = "user@example.com";
$mail->AddAddress($address, "new user");

if(!$mail->Send()) {
  echo "Error in Sending email: " . $mail->ErrorInfo;
} else {
  echo "Message sent!";
}

我认为您应该尝试这样更改主机:

$mail->Host       = "ssl://smtp.gmail.com";
$mail->Port       = 465;
$mail->SetFrom('contact@example.com', 'User');

$mail->AddReplyTo("example@gmail.com', 'Name Here");

$mail->Subject    = "Contact us Email";

$mail->MsgHTML($body);

$address = "user@example.com";
$mail->AddAddress($address, "new user");

if(!$mail->Send()) {
  echo "Error in Sending email: " . $mail->ErrorInfo;
} else {
  echo "Message sent!";
}
还可以像这样设置其他参数:

$mail->Host       = "ssl://smtp.gmail.com";
$mail->Port       = 465;
$mail->SetFrom('contact@example.com', 'User');

$mail->AddReplyTo("example@gmail.com', 'Name Here");

$mail->Subject    = "Contact us Email";

$mail->MsgHTML($body);

$address = "user@example.com";
$mail->AddAddress($address, "new user");

if(!$mail->Send()) {
  echo "Error in Sending email: " . $mail->ErrorInfo;
} else {
  echo "Message sent!";
}

提供$mail->SMTPDebug=1 itz工作[1]:

提供$mail->SMTPDebug=1 itz工作[1]:

我已经启用了extension=php\u openssl.dll并将MTPDebug插入1。但仍然不起作用。您重新启动服务器了吗?我已经启用了extension=php_openssl.dll,还将MTPDebug设置为1。但仍然不起作用您重新启动了服务器吗?我已经启用了,代码今天仍然起作用。但是现在它说,在不改变我已经启用的任何代码的情况下,这个错误仍然存在,代码至今仍然有效。但现在它说,错误没有改变任何代码