1

我有一个应用程序必须使用他的电子邮件客户端向用户返回电子邮件,但在某些情况下我必须传递大约 1000 封电子邮件。

我正在使用mailtohref,如下所示:

mailto:info@useremail.com?bcc=email1@test.com,email2@other.net,anotherone@dfsf...

为什么我返回到他的电子邮件客户端而不是使用 PHPmail()函数?
因为用户发件人的电子邮件取决于他使用的计算机,并且他需要归档这些电子邮件。

问题: 一些浏览器,如果邮件列表大于 X,它不会发送到他喜欢的邮件客户端。

4

4 回答 4

8

您可以输出完整的密件抄送列表并要求用户复制粘贴。但是,如果您想将数千个电子邮件地址传递给用户,也许您应该重新考虑您的整个策略。

于 2010-07-12T16:28:37.453 回答
2

那是因为 GET 请求的长度(并且这样的链接是 GET 请求)有一个最大值。在某些浏览器上,它可能只有 2083 个字符。因此,任何超出该限制的电子邮件地址都不会发送到客户端电子邮件程序。数千个电子邮件地址将突破限制。

于 2010-07-12T16:48:01.057 回答
2

除了mailto:address没有参数的简单之外,mailto:URL 非常不可靠,应该避免使用。URL 长度问题只是开始。

在某些情况下,我必须传递大约 1000 封电子邮件...

即使邮件程序可以处理获取 URL,用户的住宅 ISP 也不太可能允许他们发送该 URL。

放弃。自己从 PHP 发送邮件。将副本发送给用户用于存档目的。

于 2010-07-12T16:49:47.233 回答
1

向用户传递数千个电子邮件地址是非常不寻常的。

通常,更典型的应用程序会在服务器端使用 PHP mail(),然后允许浏览已发送的任何通知的存档。邮件保持打开状态并从 Web 服务器发送,但允许用户查看过去发送的内容。

不利的一面是,这是更多的代码,但可能是解决您遇到的问题的唯一方法;mailto:不适合大容量。

于 2010-07-12T16:42:39.770 回答