我有一个联系表单,当我从表单收到邮件时,我想添加发件人的姓名。
变量名称按如下方式过滤:
$newname = htmlspecialchars($name, ENT_QUOTES);
然后
mail($to, 'from: ' . $name, $body, $headers);
但我的主题显示& amp,& lt ...而不是&或撇号 我从其他问题中尝试过这个:
mail($to, 'from: ' . "=?UTF-8?B?" . base64_encode($name) . "?=", $body, $headers);
但没有运气......
如果我删除htmlspecialchars()
当然可行,但我想保留它以保护
修改
这不重复。
谢谢,很高兴知道主题不需要被转义,但这不是重复,因为我想知道如何逃避它并仍然正确地显示在主题中(没有{{ 1}}或'
;)。
&
在那个答案中提出的解决方案,在我的情况下使事情变得更糟,有更多奇怪的角色......所以,我的问题仍然是,为什么
=?iso-8859-1?q?this=20is=20some=20text?=
我的情况不起作用? 谢谢!