这是自动邮件发送的PHP代码。
<?php
$mailto = $_POST['mail_to'];
$mailSub = $_POST['mail_sub'];
$mailMsg = $_POST['mail_msg'];
require 'PHPMailer/PHPMailerAutoload.php';
$mail = new PHPMailer();
$mail ->IsSmtp();
$mail ->SMTPDebug = 4;
$mail ->SMTPAuth = true;
$mail ->SMTPSecure = 'ssl';
$mail ->Host = "smtp.gmail.com";
$mail ->Port = 587; // or 465
$mail ->IsHTML(true);
$mail ->Username = "rajaramkumar96@gmail.com";
$mail ->Password = "************************";
$mail ->SetFrom("rajaramkumar96@gmail.com");
$mail ->Subject = $mailSub;
$mail ->Body = $mailMsg;
$mail ->AddAddress($mailto);
if(!$mail->Send())
{
echo "Mail Not Sent";
}
else
{
echo "Mail Sent";
}
?>
运行代码后,我得到了如下错误。
2018-03-08 01:33:32连接:打开ssl://smtp.gmail.com:587,timeout = 300,options = array() 2018-03-08 01:33:33连接失败错误#2:stream_socket_client():SSL操作失败,代码为1. OpenSSL错误消息:错误:140770FC:SSL例程:SSL23_GET_SERVER_HELLO:未知协议[C:\ xampp \ htdocs \ email \ PHPMailer \ class.smtp.php第298行] 2018-03-08 01:33:33连接失败错误#2:stream_socket_client():无法启用加密[C:\ xampp \ htdocs \ email \ PHPMailer \ class.smtp.php第298行] 2018-03-08 01:33:33连接失败错误#2:stream_socket_client():无法连接到ssl://smtp.gmail.com:587(未知错误)[C:\ xampp \ htdocs \ email \ PHPMailer \ class.smtp.php第298行] 2018-03-08 01:33:33 SMTP错误:无法连接服务器:(0) SMTP connect()失败。 https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
答案 0 :(得分:0)
将SMTPSecure ='tls'与端口587一起使用。
ssl是465(smtps?),但非常过时。