我使用的是PHPMailer最新版本,我能够使用它发送电子邮件。但是现在我不知道发生了什么?现在我无法使用它发送邮件。它给了我以下错误 -
Mailer Error: SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
我还检查了openssl扩展。
这是我的代码 -
<form method="post" action="mail.php">
<input type="text" placeholder="Enter your email to subscribe" name="emailid" />
<input type="submit" value="Submit" />
</form>
mail.php
文件的内容
<?php
$emailSubscr = $_POST['emailid'];
$sub = 'New Subscriber';
$message = $emailSubscr.' has subscribed for newsletter';
require 'phpmailer/PHPMailerAutoload.php';
$mail = new PHPMailer;
//$mail->SMTPDebug = 3;
$mail->isSMTP();
$mail->Host = 'smtp.gmail.com'; // SMTP Host Name
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = 'myusername@gmail.com'; // SMTP username
$mail->Password = 'mypassword'; // SMTP password
$mail->SMTPSecure = 'tls'; // Enable TLS encryption, `ssl` also accepted
$mail->Port = 587; // TCP port to connect to
$mail->From = $emailSubscr;
$mail->FromName = 'Subscriber';
$mail->addAddress('me@example.com', 'Rohit Kumar'); // Add a recipient
$mail->addReplyTo($emailSubscr, 'Subscriber');
$mail->Subject = $sub;
$mail->Body = $message;
if(!$mail->send()) {
echo 'Some error occured, please try again later.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
echo 'Thanks for subscribing our newsletter on your email id.';
}
?>
谢谢 Faiz Rasool。我的问题已解决。
你能这样做吗$mail->SMTPDebug = 3;并发布日志 – Faiz Rasool
实际上,我使用移动宽带,其IP大部分时间都在变化。昨天,当我尝试使用我的应用程序访问它时,谷歌可能已经检测到我是可疑登录.
当我登录到我的gmail帐户时,我看到了更改密码的通知,因此我的应用程序无法登录到我的帐户.
你帮助了我。当我检查调试日志时,有一条来自谷歌的消息说通过网络浏览器登录。我这样做了,重置了密码,选择了可疑登录尝试作为ME,我的问题就解决了。但这里最主要的是,在设置了谷歌的选项 - 允许安全性较低的应用程序打开后,谷歌有时仍然阻止我的应用程序。我认为这背后的原因(我认为)是当我断开并重新连接移动宽带时,我的 ip 会发生变化。因此,我的位置发生了变化。顺便说一下,我不再为我的应用程序使用 GMail 帐户。