Браузеры mailto вопрос?
У меня есть приложение, которое должно возвращать электронные письма пользователю с его почтовым клиентом, но в некоторых случаях мне приходится передавать около 1000 электронных писем.
я использую mailto
на href примерно так:
mailto:info@useremail.com?bcc=email1@test.com,email2@other.net,anotherone@dfsf...
Почему я возвращаюсь к его почтовому клиенту вместо использования PHP mail()
функционировать?
Поскольку электронная почта отправителя пользователя зависит от того, какой компьютер он использует, и ему необходимо архивировать свои электронные письма.
Проблема: в некоторых браузерах, если список адресов электронной почты больше, чем X, он не отправляет предпочтительный почтовый клиент.
4 ответа
Вы можете вывести полный список BCC и попросить пользователя скопировать и вставить его. Но, возможно, вам следует просто переосмыслить всю свою стратегию, если вы хотите передать тысячи адресов электронной почты пользователю.
Это потому, что длина запроса GET (а такая ссылка является запросом GET) имеет максимум. В некоторых браузерах это может быть только 2083 символа. Таким образом, любой адрес электронной почты за этим лимитом не будет отправлен клиентской программе электронной почты. И тысячи адресов электронной почты сломают предел.
Для всего, кроме простого mailto:address
без параметров, mailto:
URL-адреса крайне ненадежны, и их следует избегать. Проблемы с длиной URL - это только начало.
в некоторых случаях я должен передать около 1000 писем...
Даже если почтовик сможет справиться с получением URL-адреса, интернет-провайдер пользователя вряд ли позволит ему отправить это.
Сдаваться. Отправляйте письма самостоятельно из PHP. Отправить копию пользователю для архивных целей.
Передача пользователю тысячи адресов электронной почты очень необычно.
Обычно более типичное приложение использует PHP mail() на стороне сервера, а затем позволяет просматривать архивы всех отправленных уведомлений. Почта остается включенной и отправляется с веб-сервера, но позволяет пользователю увидеть, что было в прошлом.
С другой стороны, это хороший код, но, пожалуй, единственный способ решить вашу проблему; mailto: не предназначен для большого объема.