PHP Mailer 返回 true 但未收到电子邮件

约塔姆大汉 |

我在我的网站中使用 PHP Mailer 作为我的联系表格。

<?php 
    use PHPMailer\PHPMailer\PHPMailer;
    use PHPMailer\PHPMailer\SMTP;
    use PHPMailer\PHPMailer\Exception;

    require 'phpmailer/PHPMailer/src/Exception.php'; 
    require 'phpmailer/PHPMailer/src/PHPMailer.php';
    require 'phpmailer/PHPMailer/src/SMTP.php';
    

    $name = $_POST['name'];
    $lastname = $_POST['lastname'];
    $phone = $_POST['phone'];
    $message = $_POST['textarea'];
    $from = $_POST['email'];
    $to = "[email protected]"; 
    $subject = 'email from website';



    $mail = new PHPMailer();
    $mail->Host   = "smtp.hostinger.com";
    $mail->SMTPDebug = 0;
    $mail->CharSet = 'UTF-8';
    $mail->SMTPAuth   = true;
    $mail->Port       = 465;
    $mail->Username   = $to;
    $mail->Password   = "mypassword";
    $mail->SMTPSecure = "ssl";
    $mail->From = $from;
    $mail->FromName = $name;
    $mail->addReplyTo($from, $name);
    $mail->Subject  = $subject;
    $mail->isHTML(true);
    $mail->Body = "Sender": " . $name . " " . $lastname . " \n <br/> Phone: ". $phone ." \r\n <br/> message: " . $message";;
    $mail->addAddress($to);


    
if(!$mail->Send())
{
   echo "Error sending: " . $mail->ErrorInfo;
}
else
{
   echo 'success';
}

?>

一旦我在我的网站上提交了联系表格,上面的代码就会返回success消息。

实际上没有收到电子邮件。我已经仔细检查了所有的$_POST,值是正确的。还仔细检查了我的用户名和密码(我在问题中更改了它们)。

什么会导致 PHP Mailer 返回成功消息而不发送电子邮件?

PHP 邮件程序调试

Sending with mail()<br>
Sendmail path: /usr/sbin/sendmail -t -i<br>
Envelope sender: <br>
To: [email protected]<br>
Subject: =?UTF-8?B?15nXpteZ16jXqiDXp9ep16gg157XlNeQ16rXqA==?=<br>
Headers: Date: Sun, 19 Sep 2021 09:37:31 +0000From: test11 &lt;[email protected]&gt;Reply-To: test11 &lt;[email protected]&gt;Message-ID: &lt;[email protected]&gt;X-Mailer: PHPMailer 6.5.1 (https://github.com/PHPMailer/PHPMailer)MIME-Version: 1.0Content-Type: text/html; charset=UTF-8<br>
Result: true<br>
马蒂金斯

您需要告诉 phpMailer 使用 SMTP

$mail->isSMTP();

OP 回复指出以下错误:

Error sending: SMTP Error: The following recipients failed:  [email protected]: <[email protected]>: Sender address rejected: not owned by user [email protected]

这可能是由于“from”字段与 smtp 登录名不同造成的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

PHP联系表单提交但未收到电子邮件

php 显示消息已发送但未收到到我的电子邮件

在功能测试中返回 Symfony Mailer 电子邮件的正文?

带有PHP Mailer的PHP电子邮件

PHP联系表格,未收到电子邮件

从PHP Mailer标头修剪电子邮件地址

向 CCN 用户 PHP MAILER 发送不同的电子邮件

PHP Mailer - 从邮件设置问题

Rails Action Mailer并返回状态200(如果已发送电子邮件)

PHP同时使用PHP Mailer将内容循环到电子邮件中

Vue电子邮件验证未返回true

如何阻止PHP Mailer在每个电子邮件上附加所有电子邮件地址?

带有 Laravel 的 Plesk PHP 电子邮件未收到 DKIM 签名

PHP 电子邮件工作正常,但用户实际上并未收到

即使对于无效的电子邮件,使用 jquery 的电子邮件验证也会返回 true

PHP Mailer:如何从电子邮件中的选择选项中查看信息

PHP Mailer未显示任何错误,但不发送电子邮件

为什么从PHP-Mailer发送电子邮件很慢

电子邮件未发送完成mdaemon配置,但邮件未发送通过且未收到错误的php文件

<simplejavamail> Mailer.sendMail(email); 成功发送和接收电子邮件后再也不会返回

PHP Mailer-邮件正文中的foreach

从php表单使用php-mailer库通过本地主机Xampp发送电子邮件的问题/错误

Cakephp电子邮件已发送但未收到

仅返回true或false(PHP)

PHP Facebook API-电子邮件返回null

即使邮件功能返回true,我的服务器也无法发送电子邮件

TinyMCE编辑器的格式不会使用PHP-Mailer通过电子邮件发送

通过PHP Mailer使用实时服务器SMTP服务器发送电子邮件不起作用

如何使用PHP-Mailer在电子邮件正文中分别显示电话号码和密码