【发布时间】:2010-11-08 22:01:17
【问题描述】:
我在 PHP 脚本中有一个 mail() 函数。它可以很好地发送 HTML - 标头设置正确。然而,不正确的是 HREF 的表示形式——它们在 Thunderbird 中出现的都是乱码。
这是发送的内容:
<a href='/index.php?page=blahdeblah'>Click</a>
但是收到的是这样的:
Click</index.php?page=blahdeblah>
请注意链接文本在标记之前,没有结束标记(即使原始 PHP 字符串中包含一个 IS)
我使用的标题是这样的:
$headers = 'From: noreply@' . $url_short . "\r\n";
$headers .= 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
(使用了一些 PHP 变量)
谁能帮忙解决这个奇怪的问题?
【问题讨论】:
-
如果不出意外,链接到
/index.php是不可能的。尝试使用绝对 URL。这些链接在其他电子邮件客户端中是否有效? -
我觉得奇怪的是引号也被去掉了。尝试使用双引号
<a href="/index.php.php?page=blahdeblah">Click</a>进行测试,看看它是否做同样的事情? -
@stealthyninja - 我用双引号试过没有用,但是谢谢:)
-
@ceejayoz - 谢谢!使用 /index.php 我真是太愚蠢了——电子邮件客户端不知道要使用哪个服务器!非常感谢!
标签: php html email formatting