【问题标题】:PHP mail showing text without linkPHP 邮件显示没有链接的文本
【发布时间】:2020-01-27 18:01:23
【问题描述】:

我正在为我的课程制作一个小项目,我需要发送一封包含 HTML 内容的邮件。因为它需要定制,所以我使用 AJAX 函数通过 PHP 脚本将其与数据一起发送。问题是当我收到邮件时,它没有显示带有 href 的链接,而只显示链接的内容。

这是我在 PHP 脚本中的发送代码:

$msg = $_POST["message"];
$objet = $_POST["objet"];
$passage_ligne = "\n";
$header = "From: no-reply@pleasepayme.ch\r\n";
$header .= "MIME-Version: 1.0\r\n";
$header .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
$header .= 'Content-Transfer-Encoding: quoted-printable';
mail($emailDestinataire,$objet,$msg,$header);

这是调用它的 AJAX 函数:

$.ajax({
    type: 'POST',
    url: 'sendMail.php',
    data:{
        email: $("#connEmail").val(),
        message : '<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8" /></head><body>Cliquez <a href="https://pleasepayme.ch/index.php?email='+$("#connEmail").val()+'&token='+response[0].token+'">ici</a> pour vous connecter<br/>Votre code de connexion est : '+response[0].token+'</body></html>',
        objet: "Token de connexion pleasepayme.ch",
    },
    success:function(response){
        alert(response);
        return false;
    }
});

这是我收到的邮件:

请帮帮我;)

【问题讨论】:

  • 点击 Ajax 请求时浏览器控制台中的任何错误。以及var_dump($msg); 在您的 php 端的输出是什么?给我们看
  • 嘿,tks 我检查了,但内容完全相同:/
  • Salut,你能尝试删除 $header .= 'Content-Transfer-Encoding:quoted-printable';从你的标题?我在我的代码中使用它并且总是让它工作: $header .= "MIME-Version: 1.0" 。 "\r\n"; $header .= "内容类型: text/html; charset=iso-8859-1" 。 "\r\n";
  • 嘿,tks 我通常也没有,但这里没有它,邮件不会发送......

标签: javascript php jquery html email


【解决方案1】:

我想我找到了问题所在,感谢 Michael T 让我观看$header .= 'Content-Transfer-Encoding: quoted-printable; 行,这就是问题所在。 我将其更改为$header .= 'Content-Transfer-Encoding: 8BIT';,现在它运行良好。谢谢你帮助我^^

【讨论】:

  • 好朋友!竖起大拇指!
猜你喜欢
  • 2015-11-22
  • 2017-06-08
  • 2019-07-05
  • 1970-01-01
  • 1970-01-01
  • 2018-06-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多