PHPMailer是一个PHP电子邮件传输类。 PHPMailer旨在与其他服务器直接通信(与PHP的本机mail()函数不同)。与[php]标签一起使用
我拥有我的域名 .com,它托管在不同的域名提供商中。 我想使用 PhpMailer,但我的虚拟主机不提供 SMTP 服务器,但它允许我创建我的域名的电子邮件...
我正在尝试使用 phpmailer 发送电子邮件。这是我写的代码。 $mail = 新的 PHPMailer; $mail->isSMTP(); $mail->主机 = 'smtp.gmail.com'; $mail->SMTPAuth =
使用 OAUTH2 和 PHPMailer SMTP 到 O365
我正在将具有基本(用户 ID 和密码)身份验证的现有 PHPMailer 应用程序转换为使用 OAUTH2。设置很简单,但应用程序在身份验证时失败。 2020-05-23 15:14:59 连接:打开
我可以在用户填写 PHP Mailer 表单时获取他们的数据(设备、浏览器)吗
我需要获取用户数据,例如他们在我的网站上填写表格时所使用的浏览器和设备。我正在使用 Php Mailer,所以你能帮助我如何做到这一点吗? 谢谢...
有我的代码(它适用于 gmail 帐户,但不适用于 Outlook) 我更改了主机、SMTPDebug(从 0 到 2)、端口(从 465 到 587),但它不起作用 $mailto = $邮件; $mailSub = "邀请...
PHPMailer 生成 PHP 警告:stream_socket_enable_crypto(): 对等证书与预期不匹配
我在 PHP 5.6 上使用 PHPMailer,PHP 5.6 中认证的安全性增强确实很有趣。 我正在尝试向 dreamhost 上托管的域发送测试消息,但返回错误
PHPMailer 在我们的 Windows Server 中与 SES 完美配合,但我收到了来自 AWS 的关于 TLS 1.0 连接需要更新到 TLS 1.2 或更高版本的通知。这个要求会...
这段代码工作了一年,但今天突然停止工作了。我没有更改 Gmail 密码或其他任何内容。 gmail有更新什么吗? 我该如何解决这个问题? 错误: 留言无法...
我已经尝试了一段时间在 php 中编写代码以从表单发送文件。 该表单有效,它将信息和文件上传到服务器。 我使用 AJAX 提交表单。 问题: ...
我正在尝试创建联系表单。我在网上搜索了如何发送电子邮件,他们总是说使用 PHPMailer 比使用 mail() 函数更好。 联系表格包括...
在 Wordpress PHPMailer 中使用 DKIM 记录,使其在 WP 更新后仍然存在
有人找到了使用 PHPMailer 中的 DKIM 选项发送 DKIM 签名的电子邮件而无需编辑 wp-core 文件的解决方案吗? PHPMailer 具有以 $DKIM_ 开头的公共属性,可以...
通过 PhpMailer 发送电子邮件不会返回 Javascript 响应
我正在使用 PhpMailer 从 php/Javascript 发送电子邮件,它正在工作,但没有返回成功:函数(响应)。 我的JavaScript: <question vote="0"> <p>我正在使用 PhpMailer 从 php/Javascript 发送电子邮件,它正在工作,但没有返回 <pre><code>success: function(response)</code></pre>。</p> <p>我的JavaScript:</p> <pre><code><script type="text/javascript" language="javascript"> $(document).ready(function() { $('.pendente').click(function() { $.ajax({ type: 'POST', dataType: 'json', url: 'send_email.php', async: true, data: dados, context: this, success: function(response) { alert("Ok!"); $(this).removeClass('btn-default').addClass('btn-warning'); } }); }); </code></pre> <p>我的send_email.php:</p> <pre><code><?php include "ligacao.php"; //connection string to BD $encweb = $_POST['enc']; $datapendente = date("Y-m-d H:i:s"); $texto = "'Pendente em ".$datapendente; $texto = $texto."'"; $sql="UPDATE Texoleo.dbo.bo set bo.logi2=0, bo.logi4=1 "; $sql=$sql.", bo.dataopen='".$datapendente."', bo.u_msgshist="; $sql=$sql." concat(".$texto.", char(13)+char(10))+(cast(bo.u_msgshist as nvarchar(600))) "; $sql=$sql." where bo.fref='".$encweb."'"; $result = odbc_exec($connect, $sql); /**** Fim sql ****/ /**** Enviar email ****/ $clientenome = $_POST['nome']; $clienteemail = $_POST['email']; include('lib/class.phpmailer.php'); include('lib/class.smtp.php'); $mail = new PHPMailer; $mail->SMTPDebug = 2; $mail->isSMTP(); $mail->Host = 'myhost.com'; $mail->SMTPAuth = true; $mail->Username ='<a href="/cdn-cgi/l/email-protection" data-cfemail="a3d6d0c6d1e3d6d0c6d18dc0ccce">[email protected]</a>'; $mail->Password = 'mypassword'; $mail->SMTPSecure = 'tls'; $mail->Port = 587; $mail->setFrom('<a href="/cdn-cgi/l/email-protection" data-cfemail="35584c755058545c591b565a58">[email protected]</a>', 'Me'); $mail->addAddress('customer email', 'Customer name'); $mail->isHTML(true); $texto = 'bla, bla, bla '; $mail->Subject = 'My subject'; $mail->Body = $texto; $mail->AltBody = 'This is the body in plain text for non-HTML mail clients'; if(!$mail->send()) { echo 'Message could not be sent.'; echo 'Mailer Error: ' . $mail->ErrorInfo; } else { echo 'Message has been sent'; }; $response = array("success" => true); echo json_encode($response); ?> </code></pre> <p>在没有 <pre><code>$mail->send()</code></pre> 的情况下测试相同的 Javascript,它会返回成功 true,但是使用 <pre><code>$mail->send()</code></pre> 它会执行它必须执行的操作(一些 SQL 更新和发送电子邮件),但不会返回成功 <pre><code>true</code></pre> 以继续执行JavaScript 代码。</p> </question> <answer tick="true" vote="4"> <p>正如我的评论:</p> <p>调试输出与 JSON 格式混淆。通过设置 <pre><code>SMTPDebug = 0</code></pre> 禁用它,并删除任何其他非 JSON 输出。</p> <p>如果您在浏览器的开发工具中检查 XHR 请求的响应,通常可以看到这种情况发生。</p> </answer> <answer tick="false" vote="1"> <p>问题出在 SMTPDebug=2 上。按照 @synchro 的建议,它应该是 SMTDebug=0 。也非常感谢 Атанас Атанасов 的帮助。 $mail->SMTPDebug = 0;</p> </answer> <answer tick="false" vote="0"> <p>我注意到导致问题的回声很少。您的回复如下所示:</p> <pre><code>Message has been sent {"success":true} </code></pre> <p>并且你希望它看起来像下面这样,所以 javascript 可以将其处理为 <strong>json</strong>,而不是字符串:</p> <pre><code>{"success":true, "msg":'Message has been sent'} </code></pre> <p>您应该将消息设置为变量,以便可以通过响应传递它们。</p> <pre><code>if(!$mail->send()) { $msg = 'Message could not be sent: '.$mail->ErrorInfo; } else { $msg = 'Message has been sent'; }; $response = array("success" => true, 'msg' => $msg); echo json_encode($response); </code></pre> <p>您可以使用开发人员工具中的“网络”选项卡了解 ajax 调用的请求和响应负载。</p> <p>此外,您最好将内容类型标头设置为 json。</p> <pre><code><?php header('Content-Type: application/json'); </code></pre> </answer> <answer tick="false" vote="0"> <p>您使用什么版本的 jQuery?</p> <p>如果您使用 jQuery 3.0+,您应该使用 .done() 而不是 .success(),因为它已被弃用。</p> <blockquote> <p>弃用通知:从 jQuery 3.0 开始,jqXHR.success()、jqXHR.error() 和 jqXHR.complete() 回调已被删除。您可以使用 jqXHR.done()、jqXHR.fail() 和 jqXHR.always() 来代替。</p> </blockquote> </answer> </body></html>
JSON.parse:JSON 数据第 1 行第 5 列处的 JSON 数据后出现意外的非空白字符
我已将phpmailer 6.8.1(从phpmailer 5.2升级)安装到我的服务器中(使用php v7.0.33)。当我收到测试电子邮件时,phpmailer 正在工作,但是一旦电子邮件数据被处理/
我使用 PHPMailer 在网站上制作了一个表单。我的表格在一段时间内工作正常,但现在不行了。我对 PHP 比较陌生,所以我不确定问题出在哪里。 这是我的 PHPMailer 文件 &q...
我正在使用 PHP mail() 函数发送电子邮件,电子邮件发送正常。 需要帮助删除发送邮件中的“通过”部分。 ** PHP 代码:** 我正在使用 PHP mail() 函数发送电子邮件,电子邮件发送正常。 需要帮助删除发送邮件中的“通过”部分。 ** PHP 代码:** <?php if(isset($_POST['submit'])){ // look for errors generated error_reporting(E_ALL); ini_set('display_errors', 1); // get Form data in variables $to = $_POST['reciever_email']; $subject = $_POST['subject']; $message = $_POST['message']; $from = $_POST['sender_email']; // make headers for sent mail $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; $headers .= "From:" $from "\r\n"; // send email now $result = mail( $to, $subject, $message, $headers ); // show results pass/fail via html if($result){ echo "<div class='alert alert-success mt-3'>Email has been sent successfully</div>"; }else{ echo "<div class='alert alert-danger mt-3'>Sorry! something went wrong</div>"; } } ?> 注意: 电子邮件正在从共享主机通过标题中写入的[域名]发送,但来自 VPS 服务器的电子邮件未发送,显示成功消息,并且没有收到电子邮件。 我不想使用 PHPMailer 库,并且我尝试在标题中附加“From”。但这在 VPS 服务器上不起作用。共享托管服务器正在使用“via”发送电子邮件。 像这样使用邮件功能: mail('[email protected]', 'Subject', 'MessageBody', null,'[email protected]'); 确保最后一个参数是 -f 和电子邮件地址。另外,您可以添加这样的标题来发送 HTML 电子邮件: $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; mail('[email protected]', 'Subject', 'HTMLmessageBody', $headers,'[email protected]'); 根据我的经验,我建议通过 PHPMailer 或任何类似的稳定脚本发送电子邮件。
我的问题是,当我单击提交按钮时,它确实提交了表单,并且我在网站上或控制台内部没有收到任何问题。我对代码所做的唯一更改是编辑 php 部分...
php 邮件程序邮件程序错误:语言字符串加载失败:connect_host?
我不断收到此错误.. 下面是我的代码: IsSMTP(); $mailer-&g...
我正在使用 PHPMailer 6.8.1,并且我不想在通过邮件发送之前将文件(可以是图像、pdf 或 docx)上传到服务器。此调用不起作用: $mail->addAttachment($_FILES['
我正在尝试使用 PHPMailer 脚本和我的 Gmail 帐户创建联系表单。我已经尝试过 $Mail->SMTPSecure = "ssl"; $Mail->端口 = 465;和 $Mail->SMTPSecure = "tls";