我正在尝试在注册后向注册用户发送邮件。
为此,我使用phpmailer库。
我的代码如下:
function smtpmailer($to, $from, $from_name, $subject, $body) {
global $error;
$username = "xyz@demo.net";
$password = "1234567";
$mail = new PHPMailer(); // create a new object
$mail->IsSMTP(); // enable SMTP
$mail->SMTPDebug = 1; // debugging: 1 = errors and messages, 2 = messages only
$mail->SMTPAuth = true; // authentication enabled
$mail->SMTPSecure = 'ssl'; // secure transfer enabled REQUIRED for GMail
$mail->Host = 'smtp.gmail.com';
$mail->Port = 465;
$mail->Username = $username;
$mail->Password = $password;
$mail->Priority = 1; // Highest priority - Email priority (1 = High, 3 = Normal, 5 = low)
$mail->CharSet = 'UTF-8';
$mail->Encoding = '8bit';
$mail->ContentType = 'text/html; charset=utf-8\r\n';
$mail->SetFrom($from, $from_name);
$mail->Subject = $subject;
$mail->Body = $body;
$mail->AddAddress($to);
$mail->IsHTML(true);
$mail->WordWrap = 900;
if (!$mail->Send()) {
$error = 'Mail error: ' . $mail->ErrorInfo;
return false;
} else {
$error = 'Message sent!';
$mail->SmtpClose();
return true;
}
此代码在localhost上运行正常,但我将其上传到mysite,然后显示以下错误:
SMTP -> ERROR: Failed to connect to server: Connection timed out (110)SMTP Connect() failed.
我的网站托管在文件夹中,例如(myhost.in/mysite)。
请帮我解决问题并解决问题
提前致谢...
答案 0 :(得分:3)
我遇到了一些主机提供商不支持外部主机邮件的问题。您必须询问您的托管支持天气他们是否允许外部主机。
我使用了我的托管服务提供商的imap设置,现在它已经解决了 希望这会帮助别人!!
答案 1 :(得分:3)
转到链接 - https://accounts.google.com/b/0/DisplayUnlockCaptcha 然后单击允许访问按钮 原因:出于安全原因,谷歌不允许任何程序在用户的A / C中自动登录。
答案 2 :(得分:0)
https://support.google.com/mail/answer/78754
您可能需要为不太安全的应用启用" Access"设置 https://www.google.com/settings/security/lesssecureapps 帮帮我