gpt4 book ai didi

php - 电子邮件不是通过 google smtp 发送的

转载 作者:搜寻专家 更新时间:2023-10-31 22:00:27 25 4
gpt4 key购买 nike

我正在使用以下 php 代码将带有附件的电子邮件发送到预定义的邮件。

<?php

require_once('class.phpmailer.php');

$mail = new PHPMailer();
$body = $_POST['message'];
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->Host = "smtp.gmail.com";
$mail->Port = 465;
$mail->Username = "dimal.chandrasiri@gmail.com";
$mail->Password = "****";
$mail->SMTPSecure = 'tls';
$mail->SetFrom('dimal.chandrasiri@gmail.com', 'Your name');
$mail->AddReplyTo("dimal.chandrasiri@gmail.com","Your name");
$mail->Subject = "Abstract submission for" .$_POST['fname'];
$mail->AltBody = $_POST['message'];

if (isset($_FILES['uploaded_file']) && $_FILES['uploaded_file']['error'] == UPLOAD_ERR_OK){
$mail->AddAttachment($_FILES['file']['tmp_name'],$_FILES['file']['name']);
}

$mail->MsgHTML($body);
$address = 'dimal.chandrasiri@gmail.com';
$mail->AddAddress($address, $name);

if($mail->Send()) {
echo 'done';
} else {
echo 'error';
}

?>

密码和其他 smtp 详细信息正确,但我无法发送任何邮件。我在这里做错了什么?我使用以下 html 表单发布数据。

<form id="main-contact-form" class="abstract-form" name="contact-form" method="post" action="/script/submit.php">
<div class="row-fluid">
<div class="span5">
<label>First Name</label>
<input type="text" name='fname' class="input-block-level" required="required" placeholder="Your First Name">
<label>Last Name</label>
<input type="text" name='lname' class="input-block-level" required="required" placeholder="Your Last Name">
<label>Email Address</label>
<input type="text" name='email' class="input-block-level" required="required" placeholder="Your email address">
<label>File</label>
<input type="file" name='file' class="input-block-level" required="required" placeholder="Your Abstract File">
</div>
<div class="span7">
<label>Message</label>
<textarea name="message" id="message" required="required" class="input-block-level" rows="8"></textarea>
</div>
</div>
<button type="submit" class="btn btn-primary btn-large pull-right">Send Message</button>
<p> </p>
</form>

回显错误信息时出现以下错误。

The following From address failed: dimal.chandrasiri@gmail.com : Called Mail() without being connected

最佳答案

Gmail 用户可以在官方网站或使用第一方或第三方应用程序和服务访问他们的帐户。第一方应用程序是例如 Google 的官方 Android Gmail 应用程序,而 Thunderbird 和 Windows 8 的邮件客户端应用程序是第三方应用程序。

谷歌 announced早在 2014 年 4 月,它将提高其服务的登录安全性,并影响任何向公司发送用户名和密码的应用程序。

公司当时建议改用OAuth 2.0,但直到现在才强制执行。

如果你打开新的less secure在 Google 安全设置下的应用程序页面,您会注意到 Google 默认已禁用访问权限。

注意:只有当您没有使用 Google Apps 或没有为帐户启用双因素身份验证时,您才能看到该页面。

您可以在此处拨动开关以再次启用安全性较低的应用程序,以便重新获得访问权限。

enter image description here

关于php - 电子邮件不是通过 google smtp 发送的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30011275/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com