完美联系我们表问题
问题描述:
有没有人使用forest_of_code/PerfectCode的“Perfect Contact Us Form”?完美联系我们表问题
我不断收到错误信息:“糟糕!有些东西不对,请检查您的详细信息。”
我按照编码器的指示一步一步地检查了多次,我没有误输入。我也确定我的主机允许邮件通过SMTP。我正尝试使用Gmail邮件发送邮件。我在我的帐户中启用了“允许安全性较低的应用程序”,但我没有使用2AuthFactor。
这是我目前的设置(在XXXX是隐藏我的信息,我的文件即时通讯使用我的真实信息):
function smtpContact($to, $subject, $name, $phone, $message){
require_once 'PHPMailer/PHPMailerAutoload.php';
$response = array();
//Create a new PHPMailer instance
$mail = new PHPMailer;
$mail->isSMTP();
$mail->SMTPDebug = 0;
$mail->Debugoutput = 'html';
$mail->Host = "smtp.gmail.com";
$mail->Port = 587;
$mail->SMTPAuth = true;
$mail->Username = "[email protected]";
$mail->Password = "xxxxxxxxxxxxx";
$mail->setFrom($to, $name);
$mail->addAddress('[email protected]', 'XXXXX');
$mail->Subject = $subject;
$message = '<div style="background:#F5F5F5; padding:10px;">
<p>'.$message.'</p><br />
<div>Name : '.$name.'</div><br />
<div>Phone : '.$phone.'</div><br />
</div>';
$mail->msgHTML($message);
$mail->AltBody = 'This is a plain-text message body';
$mail->SMTPOptions = array(
'ssl' => array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)
);
if (!$mail->send()){
// For Debugging
//return "Mailer Error: " . $mail->ErrorInfo;
$response['error'] = 'Something not right. Please check your details.';
}else{
$response['success'] = 'Your email has been sent successfully.';
}
echo json_encode($response, JSON_PRETTY_PRINT);
}/*...ends[contactus]...*/
答
这之前大约5年前有了答案。我再次发布这个内容,就像我一样,人们仍然遇到这个问题。我发现这里的解决方案:send email using Gmail SMTP server through PHP Mailer
基本上所有我需要做的就是删除这一行$mail->isSMTP();
我该用户表示感谢,我一直在寻找一个解决方案了好几天,直到我偶然发现了他的问题,他自己回答:D
它看起来像你有一个ErrorInfo属性的邮件对象。你可能想从那里开始并收到消息。这将有所帮助。 – Ctznkane525
我已经尝试过,但它给出的是,我知道一个事实是错误的凭据是不是。我刚刚偶然发现了一个近5年的帖子,提到这一行是'$ mail-> isSMTP();'的问题。我删除它,它工作得很好。一直试图找到解决这个问题daaaaays – Synn
耶刚刚意识到,我问了这个问题后。我一直在寻找尝试和删除这篇文章,但我无法找到它的任何地方。即时通讯在这里仍然是新的,所以它可能需要我来找出如何删除这个 – Synn