phpmailer 相关问题

PHPMailer是一个PHP电子邮件传输类。 PHPMailer旨在与其他服务器直接通信(与PHP的本机mail()函数不同)。与[php]标签一起使用

535 5.7.8 错误:在 Hostinger 上使用 PHPMailer 身份验证失败,用户和密码正确

我一直在尝试使用 PHPMailer 为我的网站创建联系表单,因为它似乎是我想要做的事情的最简单的选择。我在 Hostinger 上托管我的网站,并且我正在使用他们的“...

回答 1 投票 0

php - 在 vscode 中时“未定义类型 'PHPMailer\PHPMailer\PHPMailer'.intelephense(1009)”

我目前正在尝试设置一个简单的 PMP 邮件程序脚本,但是我在代码的第 14 行收到错误“未定义类型 'PHPMailer\PHPMailer\PHPMailer'.intelephense(1009)”。所以c...

回答 2 投票 0

不使用 SMTP 的 PHPmailer

我已将 PHPMailer 文件夹添加到我的 Web 服务器上的根文件夹中,但我刚刚收到与 SMTP 有关的错误。 有没有一种方法可以在不需要登录邮件帐户的情况下使用 PHPMailer? 钙...

回答 3 投票 0

如何解决SSL证书验证问题?

我正在开发一个网站,我想添加电子邮件发送选项。 我写了下面的代码。 $mail = new PHPMailer(); $mail->isSMTP(); $mail->Host = '[email protected]'; $mail->SMTPAuth = true...

回答 1 投票 0

PHPMailer 发送重复的电子邮件

我在让我的 php 邮件程序发送一封电子邮件时遇到一个小问题,它不断发送重复的电子邮件。我通过在...

回答 2 投票 0

PHPMailer 在无限循环发送电子邮件时出错

我目前正在制作一个网站。 我想让用户有机会在这里发送电子邮件。但我有一个问题无法解决。我为电子邮件编写了以下程序。 使用 PHPMailer\

回答 1 投票 0

PHP:PHP Mailer,消息无法发送

我正在使用 PHP Mailer 进行邮件发送过程。当我使用它时,我收到一条错误消息,即 错误: 管理员:消息无法发送。邮件程序错误:SMTP 错误:无法连接到 SMTP ...

回答 1 投票 0

无法使用 phpmailer 向 gmail 地址发送电子邮件

首先我要说的是,我并没有尝试使用 gmail 作为我的 smtp 服务器。 我可以使用 PHPMailer 使用我的域 smtp 服务器将电子邮件发送到我的主机 (hostgator) 的大多数地址...

回答 1 投票 0

为什么 PHPMailer 删除邮件时速度很慢?

我不知道这是否只是我个人的看法,但我注意到 PHPMailer 向我的用户发送邮件大约需要 3 分钟。因此,我决定通过 cloudflare 来...

回答 1 投票 0

使用 PHPMailer 和 html 模板发送 html 电子邮件

我正在尝试将我的联系人(使用 PHPMailer)发送的电子邮件以漂亮的 html 模板(实际上是 phtml)发送。 有效方法:我收到了 html 模板,因此传输没有问题 什么...

回答 6 投票 0

在 WordPress 中通过 SMTP 发送电子邮件,无需任何插件

我已经尝试了几天在不使用插件的情况下在 WordPress 中发送电子邮件。使用 wp_mail 函数时,我收到错误 500,在我使用邮件函数并且它起作用之前,但我一直

回答 3 投票 0

Codeigniter 带有 SMTP 的电子邮件显示奇怪的格式

我有一条 HTML 消息,如下所示。 这是银行帐号 *********0205 这是一封测试电子邮件。 这是我的电子邮件 [email protected] 我有一条 HTML 消息,如下所示。 <p>This is a bank account number *********0205</p> <p><b>This is a test email.</b></p> <p>This is my email [email protected]</p> <p>This is a link <a href='https://xxxxxx.uslogistics.com/images/logo_big.png'>https://xxxxxx.uslogistics.com/images/logo_big.png</a><p> 我想通过 SMTP 发送该消息。使用的主机是smtp.office365.com 我正在使用 Codeignitor,当我在没有 SMTP 的情况下发送电子邮件时,我收到的电子邮件显示良好,请参见下面(图像和代码) <?php $this->load->library('email'); $body = "<p><b>This is a test email.</b></p><p>This is my email [email protected]</p><p>This is a link <a href='https://xxxxxx.uslogistics.com/images/logo_big.png'>https://xxxxxx.uslogistics.com/images/logo_big.png</a><p>"; $config['mailtype'] = 'html'; $config['charset'] = 'iso-8859-1'; $config['wordwrap'] = TRUE; $config['newline'] = "\r\n"; $this->email->clear(TRUE); $this->email->initialize($config); $this->email->from("[email protected]", "No Replay"); $this->email->to("[email protected]"); $this->email->subject("Test"); $this->email->message($body); $this->email->send(); 当我使用 SMTP 时,我会收到一封有线电子邮件(参见下面的图片和代码) $this->load->library('email'); $body = "<p><b>This is a test email.</b></p><p>This is my email [email protected]</p><p>This is a link <a href='https://xxxxxx.uslogistics.com/images/logo_big.png'>https://xxxxxx.uslogistics.com/images/logo_big.png</a><p>"; $config['protocol'] = 'smtp'; $config['smtp_host'] = 'smtp.office365.com'; $config['smtp_user'] = ""; //Here I put the SMTP username $config['smtp_pass'] =""; //Here I put the SMTP password $config['smtp_port'] = '587'; $config['smtp_crypto'] = 'tls'; $config['mailtype'] = 'html'; $config['charset'] = 'iso-8859-1'; $config['wordwrap'] = TRUE; $config['newline'] = "\r\n"; $this->email->clear(TRUE); $this->email->initialize($config); $this->email->from("", "No Replay");//Here I put the SMTP username as email. $this->email->to("[email protected]"); $this->email->subject("Test"); $this->email->message($body); $this->email->send(); 这只是一个简单的 HTML,如果我使用表格,它们都会被有线文本替换。 为了确保它与 codeignitor 相关,我使用了 PHPMailer(一个没有 CI 的新项目),当我使用 SMTP 或不使用 SMTP 发送相同的 HTML 电子邮件时,我每次都会收到正确的电子邮件。 这是我的 SMTP 的 PHPMailer 代码: <?php use PHPMailer\PHPMailer\PHPMailer; use PHPMailer\PHPMailer\Exception; require 'vendor/autoload.php'; $mail = new PHPMailer(true); try { $mail->SMTPDebug = 2; $mail->isSMTP(); $mail->Host = 'smtp.office365.com'; $mail->SMTPAuth = true; $mail->Username = '';//Here I put the SMTP username. $mail->Password = '';//Here I put the SMTP password. $mail->SMTPSecure = 'tls'; $mail->Port = 587; $mail->setFrom('');//Here I put the SMTP username as email. $mail->addAddress('[email protected]'); $mail->isHTML(true); $mail->Subject = ''; $mail->Body = "<p><b>This is a test email.</b></p><p>This is my email [email protected]</p><p>This is a link <a href='https://xxxxxx.uslogistics.com/images/logo_big.png'>https://xxxxxx.uslogistics.com/images/logo_big.png</a><p>"; $mail->send(); echo 'Message has been sent'; } catch (Exception $e) { echo 'Message could not be sent. Mailer Error: ', $mail->ErrorInfo; } 这个 email.php 配置终于对我有用了: config= array( 'protocol' => 'smtp', 'smtp_host' => 'smtp.office365.com', 'smtp_port' => '587', 'smtp_user' => '[email protected]', 'smtp_pass' => 'xxxxxxxxxx', 'smtp_crypto' => 'tls', 'charset' => 'utf-8', 'crlf' => "\r\n", 'newline' => "\r\n", 'mailtype' => 'html'); 我的电子邮件中的 = 字符也遇到了完全相同的问题,我通过在 email.php 的配置中添加以下内容解决了这个问题: $config['crlf'] = "\r\n"; $config['newline'] = "\r\n"; 希望对你有帮助

回答 2 投票 0

如何修复 PHPMailer __autoload() 错误?

我使用phpMailer来处理从网站发送的邮件。今天早上我突然收到这样的消息: 致命错误:不再支持 __autoload(),请使用 spl_autoload_register() i...

回答 3 投票 0

409 与 Hostgator 冲突

将文件上传到 Hostgator 服务器后出现 409 冲突错误。 他们最初表示这是域名服务器的问题,但后来已经解决。 现在他们说这是...

回答 1 投票 0

PHPMailer Google Oauth2 发送邮件问题

我使用 php 7.4 和 php 库 { “要求”: { "league/oauth2-google": "4.0.0", “phpmailer/phpmailer”:“6.1.4” } } 这里是...

回答 1 投票 0

PHPMailer 连接 Oauth2

我创建了一些代码来使用 Oauth2 将服务器端连接到 gmail,但我收到以下错误代码: 2024-05-24 14:25:45 服务器 -> 客户端:220 smtp.gmail.com ESMTP xxxxxx.114 - gsmtp 2024-05-24 14:25:45 C...

回答 1 投票 0

致命错误:无法重新声明 PHPMailerAutoload()

我正在使用 PHPMailer 从本地主机发送电子邮件。 我编写了一个函数,该函数应该向选择接收电子邮件选项的注册用户发送电子邮件。 (即时事通讯

回答 3 投票 0

PHP 邮件程序 SMTP -> 错误:RSET 失败

迁移到新服务器后,我在 PHPMailer 中遇到问题。 我有问题,调试输出显示如下 SMTP -> get_lines(): $data 为 "" SMTP -> get_lines(): $str 是“220 准备好...

回答 1 投票 0

获取 O365 SMTP 的刷新令牌需要哪些范围?

我们在公司中为每位员工和 3 个部门(服务、支持和报告)使用电子邮件地址 - 例如 @.de 或 support@ 我们在公司中为每位员工和 3 个部门(服务、支持和报告)使用电子邮件地址 - 例如 <employee_name>@<company_name>.de 或 support@<company_name>.de(“<..._name>”只是此处发帖的占位符)。我们的程序使用 PHPMailer 通过 SMTP 从 3 个部门发送电子邮件(主机:smtp.office365.com),这意味着 PHPMailer 是由 Microsoft 任务计划程序在没有我们 Microsoft 用户的计算机上启动的程序/脚本调用的已登录。现在我们要从基本 SMTP 身份验证切换到 Oauth2。因此,我们在 azure 门户的主租户 (<boss_name>@<company_name>.de) 中注册了一个 Web 应用程序“PHPMailer”。 要获取刷新令牌,我必须在浏览器中打开文件 get_oauth_token.php,该文件包含在 PHPMailer 中。在该文件中,Microsoft 的范围是 ['wl.imap', 'wl.offline_access']。不幸的是,我找不到该信息,如果这只是默认范围或示例范围,并且我必须根据我的需要(SMTP)更改它,或者它必须始终与我需要令牌的范围无关。此外,我无法了解如何命名该文件中的范围(例如 offline_access 与 wl.offline_access)以及 wl. 的含义。 在天蓝色门户中,我们设置了应用程序权限Mail.Send和User.Read。最后一张已经在那里了。 在过去的几周里,我阅读了无数来自 Microsoft、PHPMailer 和其他公司以及 stackoverflow 等论坛的教程。但我找不到必要的信息。 示例: 微软 使用 OAuth 验证 IMAP、POP 或 SMTP 连接 如何设置多功能设备或应用程序以使用 Microsoft 365 或 Office 365 发送电子邮件 Microsoft 身份平台中的权限和同意 PHPMailer 将 Gmail 与 XOAUTH2 结合使用(遗憾的是 Microsoft 没有解释) PHP League 的 OAuth 2.0 客户端基本用法 Microsoft OAuth 2.0 客户端提供程序 Microsoft OAuth 2.0 对 Steven Maguire 的 PHPMailer 的支持 那么,我需要 O365 SMTP 的范围以及如何在文件中命名它get_oauth_token.php? (如果您需要更多信息,请告诉我...) 更新: PHPMailer 感谢@grew,我找到了一个精心制作的解释,其中包含有关委派权限的有用屏幕截图: Microsoft Azure 和 XOAUTH2 设置指南 不幸的是,它对我的应用程序权限没有帮助,因为它是针对 Microsoft 用户登录到 PHPMailer 正在工作的计算机上的情况而设计的。 我会根据您的问题尽力帮助您。 只要您拥有登录凭据,在哪里运行以下步骤来获取所有必要的信息并不重要。据我所知,你们公司没有白名单。 下面将澄清一些事情和设置。最重要的一步是拥有一个与您的 url 相匹配的重定向 URL,例如 http://localhost/get_oauth_token.php,只要它与 Azure 中的相同,您叫它什么并不重要。最佳实践是使用域。获得令牌后,您在哪里运行邮件就不再重要了。 1.作曲家需要 greew/oauth2-azure-provider 2. 教程 3. get_oauth_token.php 保存并运行它。提供教程中的 ClientId、ClientSecret、TenantID。使用您租户中的电子邮件地址登录。它将重定向到微软的登录页面,输入您的电子邮件地址和密码。它将创建一个令牌。复制粘贴令牌。 4. 测试邮件 保存。输入电子邮件、ClientId、ClientSecret、TenantID 和令牌。 将 addAddress 更改为您想要的内容。 如果一切顺利,它将向您发送一封测试电子邮件。 要记住一件事。对于租户中的每个电子邮件地址,您需要运行 get_oauth_token.php 并使用特定的电子邮件地址登录以获取令牌。每个电子邮件地址都有一个独特的令牌!还要记住,有一个由您自己设置的关键超时。所以不要让有效期太短。如果过期,则需要使用 get_oauth_token.php 重新开始。

回答 1 投票 0

PHPMailer 更新到版本 6 后无法工作

在 PHP7 上的 PHPMailer 版本:5.2.6 上运行得很好,但每隔一段时间电子邮件就会发送失败。所以,我决定将 PHPMailer 更新到版本 6。不使用 Composer 所以

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.