Как отправить скрытую копию php
Отправка письма средствами PHP. Класс PHPMailer.
Отправка почты средствами PHP может быть очень простой, а может быть очень сложной, это зависит от того, что и как отправлять
Простое электронное письмо – это обычный текст, и не составляет большого труда для отправки, но когда требуется отправить HTML письмо или письмо с вложенным файлом требуется указать MIME заголовки, писать содержимое файла в письмо и еще целая куча не очень приятных действий и может стать сложной задачей для разработчика.
Но используя класс PHPMailer, отправка писем становится довольно простой задачей. Этот класс берет на себя всю рутинную работу по отправки письма и представляет очень удобный интерфейс для работы с ним, к тому же и бесплатен.
PHPMailer позволяет:
* Посылать письма с множественными: адресатами (TO), копиями (CC), скрытыми копиями (BCC) и устанавливать атрибут REPLY-TO;
* Совмещение нескольких сообщений и вложений файлов;
* Отправка сообщений в виде HTML;
* Многослойные/альтернативные сообщения для клиентов, которые не могут читать HTML письма;
* Перенос строк по словам (word wrap);
* Отправка сообщений через sendmail, PHP mail() или непосредственно по протоколу SMTP
* Библиотека проверена на множестве SMTP серверах: Sendmail, qmail, Postfix, Imail, Exchange, Mercury, Courier;
* Поддержка 8 бит, base64, бинарного режима, и пригодного для печати формата;
* Работает на любой win32 и *nix платформе;
Как отправить скрытую копию php
(PHP 4, PHP 5, PHP 7, PHP 8)
mail — Отправляет электронную почту
Описание
Отправляет электронную почту.
Список параметров
Получатель, или получатели письма.
Тема отправляемого письма.
Тема должна соответствовать » RFC 2047.
Каждая строка должна быть отделена символом CRLF (\r\n). Строки не должны быть длиннее 70 символов.
(Только для Windows) Если PHP передаёт данные напрямую SMTP-серверу и в начале строки стоит точка, то она будет удалена. Чтобы избежать этого замените все такие точки на две.
Строка или массив, которые будут вставлены в конец отправляемых заголовков письма.
Обычно используется для добавления дополнительных заголовков (From, Cc, and Bcc). Несколько дополнительных заголовков должны быть разделены CRLF (\r\n). Если для составления этого заголовка используются внешние данные, то они должны быть проверены для избежания инъекций нежелательных заголовков.
Если передан массив, то его ключи будут именами заголовка, а значения значениями.
До PHP 5.4.42 и 5.5.27, параметр additional_headers не имел защиты от инъекции. Так что пользователи должны удостовериться, что передаваемые заголовки безопасны и содержат только заголовки. т.е. не содержат несколько переводов строк подряд, что стартует тело сообщения.
Если сообщения не отправляются, попробуйте использовать только LF (\n). Некоторые агенты пересылки сообщений Unix (особенно » qmail) автоматически заменяют LF на CRLF (что приводит к двойному CR, если использовалось CRLF). Используйте эту меру в крайнем случае, так как это нарушает » RFC 2822.
Так как escapeshellcmd() применяется автоматически, то нельзя использовать некоторые символы, допустимые к использованию в email-адресах некоторыми RFC. mail() не допускает такие символы, поэтому в программах, в которых они требуются, рекомендуется использовать альтернативы для их отправки (например фреймворки или библиотеки).
Возвращаемые значения
Важно заметить, что то что письмо было принято для передачи вовсе НЕ означает что оно достигло получателя.
Список изменений
| Версия | Описание |
|---|---|
| 7.2.0 | Параметр additional_headers может принимать значения типа массив. |
Примеры
Пример #1 Отправка письма.
Использование функции mail() для отправки простого письма:
// Сообщение
$message = «Line 1\r\nLine 2\r\nLine 3» ;
Пример #2 Отправка письма с дополнительными заголовками.
Добавление простых заголовков, сообщающих почтовому агенту адреса From и Reply-To:
Пример #3 Отправка письма с дополнительными заголовками, переданными массивом
В этом примере посылается то же письмо, что и в примере выше, но дополнительные заголовки задаются массивом (доступно с PHP 7.2.0).
Пример #4 Отправка письма с дополнительными аргументами командной строки.
Пример #5 Отправка HTML-сообщения
С помощью функции mail() также можно отправить и HTML-письмо.
// несколько получателей
$to = ‘johny@example.com, sally@example.com’ ; // обратите внимание на запятую
// тема письма
$subject = ‘Birthday Reminders for August’ ;
// текст письма
$message = ‘
Birthday Reminders for August
Исчерпывающая инструкция по PHP Mailer
Введение
Рассылка сообщений посредствам PHP может быть очень простой, а может быть очень сложной, все зависит от того, что и как вы собираетесь посылать.
Стандартное электронное письмо – это обычный текст, что и используется большинством разработчиков, поэтому создание MIME заголовков для HTML писем может стать сложным процессом. Теперь трудности вам не грозят, потомучто у вас есть чудесная библиотека PHPMailer, которая, к тому же, бесплатна.
В этом обучающем курсе мы будем подробно обсуждать особенности и возможности этой библиотеки.
Требования
Требования у данной библиотеки очень скромны. Вам нужен только PHP и возможность отсылать письма посредствам команды mail() или через SMTP соединение.
Также вы должны понимать основы объектно-ориентированного программирования (ООП), или, по крайней мере, понимать как правильно применять данные ниже примеры.
Не переживайте! Этот курс достаточно прост!
О PHPMailer
Это класс, обеспечивающий полную функциональность при отправке почтовых сообщений на PHP. Я назвал бы его самым лучшим из всех, которые я когда-либо использовал. Его популярность очень быстро росла. С момента появления, 7 декабря 2004 года, его скачали уже более 100 000 раз! Я надеюсь, что вы захотите увеличить это число после прочтения данного обучающего курса, и, что еще более важно, вы узнаете, как использовать те возможности по работе с почтой, о которых вы только мечтали.
Что может PHPMailer
На момент написания этого обучающего курса PHP Mailer умел:
Разработчики PHPMailer
Я выражаю этим людям свою признательность, потомучто они столько сделали, чтобы ускорить развитие моих проектов, включая PHPFreaks.com!
Готовим PHPMailer для использования
Скачать и распаковать
Первое, что вы должны сделать, это, конечно же, скачать PHPMailer! Вы можете найти его здесь: https://github.com/PHPMailer/PHPMailer/. После того, как вы скачаете файл, распакуйте его в каталог. В нашем учебнике мы предположим, что ваш сайт находится здесь: /home/mywebsite/public_html/. Теперь необходимо создать несколько директорий, чтобы упорядочить структуру проекта. Я обычно помещаю библиотеки в каталог ‘lib‘, а затем их название. Таким образом, извлекаем PHPMailer сюда: /home/mywebsite/public_html/lib/phpmailer. Вот пример из командной строки:
Теперь, когда все файлы на своих местах, давайте создадим файл конфигурации нашего проекта.
Создание и использование файла конфигурации
Одна из главных вещей, которую я люблю делать перед созданием сайта – это написание файла конфигурации, он будет содержать настройки к которым я, возможно, буду обращаться много раз. И так, я создаю файл с название config.php в /home/mywebsite/public_html/config.php. Создаем внем массив с названием $site с моими ключами и значениями, которые я буду использовать в дальнейшем. В этом руководстве я опишу переменные, которые мы будем использовать в классе PHPMailer. Вот пример моего файла config.php:
Этот пример очень прост, чтобы объяснять его. Далее мы продолжим свою работу и будем брать эти настройки по мере надобности.
Создаем класс, расширяющий PHPMailer
Сразу подчеркну, что вы должны создать класс расширения, это позволит упростить вам жизнь, далее я покажу как.
Класс расширения вызовет класс PHPMailer() и установит начальные значения, такие, как Email адрес от имени которого вы будете посылать письма, настройки почтового сервера, и так далее.
Каждый из этих параметров берется по умолчанию из файла config.php, но вы также можете переписать их при вызове нашего класса расширения. Таким образом, если вы не переопределите какой-либо из параметров в классе расширения, то он будет взят поумолчанию из файла config.php, и вам не надо каждый раз переопределять эти параметры. В этом и красота данного подхода!
Взгляните на наш класс расширения:
Далее мы рассмотрим этот код.
Разберем класс FreakMailer
Наш класс, показанный выше, очень прост. И вам необходимо обладать только базовыми навыками ООП, чтобы использовать его. Давайте разберемся.
Сначала нам необходимо подключить класс PHPMailer (файл class.phpmailer.php в директории lib). Это позволяет нам расширить класс PHPMailer, потому что делает объект доступным. Вы могли бы подключить его и в другом месте, но здесь это наиболее эффективно.
Структура управления классом
Далее, мы определяем структуру управления классом и даем ему имя при расширении класса PHPMailer.
Переменные класса
Идем дальше. Теперь мы определяем внутренние переменные. Большинство из них установлены поумолчанию в NULL, чтобы позже мы могли их переопределить, если есть необходимость заменить значения, установленные в config.php.
Давайте рассмотрим эти переменные:
После определения переменных, мы с вами можем обсудить функцию FreakMailer().
Функция FreakMailer()
Эта функция, в основном, настраивает начальные значения для класса PHPMailer, чтобы посылать почту.
Все дальнейшие действия – это, в основном, определение значений переменным класса PHPMailer. Если внутренняя переменная ($this->setting) не определена, мы берем значения из файла config.php. Я уже упоминал о том, что вы можете переопределить значения из config.php, здесь мы проверяем это.
Самое главное, что вы должны понять, это то, что все возможности PHPMailer все еще присутствуют и могут использоваться, несмотря на то, что мы его расширили. Единственное, что мы сделали здесь – это создали расширение, которое заботится о том, чтобы нам не надо было каждый раз вводить одни и теже данные, когда мы хотим послать сообщение.
Теперь, когда мы достаточно имеем представление о классе расширения, давайте попробуем отправить почту!
Отправка электронной почты средствами PHPMailer
Предварительная работа сделана и теперь у нас есть все, чтобы посылать письма средствами PHPMailer.
Первоначальное испытание
Это испытание очень важно, потому что в рамках данной статьи мы будем постоянно возвращаться к приведенному здесь коду. Если данный код у вас не заработает, перечитайте этот материал сначала и снова попробуйте. Наш первый пример мы сохраним в файле mailtest.php, который положим в корень нашего проекта. Вот его содержимое:
Давайте разберем этот код для лучшего его понимания.
Сначала мы подключаем наш конфигурационный файл, чтобы иметь доступ к массиву $site.
Далее, подключаем класс FreakMailer.
Теперь необходимо инициализировать наш класс расширения, а также класс PHPMailer.
Теперь PHPMailer готов и мы идем дальше.
Задаем тему письма и его содержание.
Теперь необходимо добавить адрес получателя.
Далее, посылаем сообщение и обрабатываем ошибки, если возникли.
Далее, мы очищаем список адресатов и список вложений.
Если вам только что пришло сообщение, которое вы отослали с помощью PHPMailer, – поздравляю!
Основные проблемы
Вот список некоторых (типичных) проблем, которые могут возникнуть у вас при отправлении почты при помощи PHPMailer (вероятнее всего, эти проблемы у вас возникли бы и при обычном отправлении писем):
Но, если у вас все заработало, давайте перейдем к отправке писем с определенными особенностями.
Использование дополнительных возможностей PHPMailer
Если вы уже здесь, но не читали при этом предыдущего материала – вернитесь и прочитайте, потому что здесь мы будем заниматься расширением базового примера.
PHPMailer имеет множество особенностей, например, добавление вложений, рассылка по списку адресатов и др. В этой части нашего материала мы с вами посмотрим, как это выглядит на практике.
Обработка адресов электронной почты
PHPMailer поддерживает много особенностей Адреса электронной почты, типа «Для» TO, «от» FROM и списков получателей, точная копия CC и Слепая точная копия BCC, Reply-TO и др. Давайте посмотрим, как использовать эти особенности.
Помните, что мы опираемся на основной пример, приведенный выше.
Добавление адреса отправителя (FROM)
В нашем основном примере адрес отправителя уже задан посредствам config.php и класса расширения, но вы в любой момент можете его переопределить. Например:
Если не определить FromName, то большинство почтовых клиентов в качестве имени подставят емаил.
Добавление адреса для ответа (Reply-To)
Поумолчанию, адрес для ответа совпадает с адресом, с которого вы отослали письмо (FROM). Однако вы можете определить разные адреса для ответа на ваше письмо:
ЗАМЕЧАНИЕ:
Вы можете задать несколько адресов для ответа. Для этого необходимо продублировать приведенный выше код столько раз, сколько вы имеете адресов (не забудьте в примере менять адреса на нужные вам).
Добавление нескольких получателей
Этот метод позволяет вам добавить нескольких получателей для письма. Я не рекомендую этот способ для анонимных листов рассылки. Смотрите позже пример для списка рассылки.
Для добавления нескольких получателей вы должны повторить вызов функции AddAddress столько раз, скольким людям вы хотите отослать ваше сообщение. Далее, пример для трех адресатов. В данном примере адрес является обязательным, а имя адресата опциональным и может быть опущено.
ЗАМЕЧАНИЕ:
Не рекомендуем пользоваться этим методом для рассылки по списку адресатов! Каждый получатель вашего письма будет видеть ВЕСЬ список получателей, а, затем, сможет использовать его по своему усмотрению. Позже мы расскажем как правильно отсылать письма по списку адресатов.
Добавить получателей точной копии (CC)
Вы можете добавить получателей точной копии точно также, как и предыдущих примерах, используя функцию AddCC.
Добавление получателей слепой точной копии (BCC)
Невидимых получателей или BCC можно добавить используя следущую функцию:
Требование подтверждения прочтения
Если вы хотите запросить у человека, читающего ваше письмо, подтверждение о прочтении, подайте следующую команду:
Теперь, когда мы рассмотрели все адреса для отправки почты, давайте посмотрим, как посылать письма ввиде HTML!
Отправление писем ввиде HTML при помощи PHP и PHPMailer
Формирование HTML письма – это одна из самых сложных задач при отправке почты средствами PHP. Настройка MIME заголовков и построение HTML – нелегкая задача и требует дополнительных знаний и исследований. Однако, PHPMailer сделает вашу жизнь проще, далее, мы покажем как это реализуется.
Важное замечание относительно почты ввиде HTML
Прежде чем мы приступим к отправке таких писем, я хотел бы, чтобы вы поняли, что важно знать о том, каким образом должны подключаться изображения и стили CSS, и т.д. Простое правило состоит в том, чтобы хранить эти файлы на сервере, а в письме давать полные ссылки на них. Если вы сходите сума и добавляете все эти файлы к письму, то готовьтесь к головной боли. Например, тело моего письма выглядит примерно так:
Как вы видете, я сделал каждый URL полным, а не сокращенным относительно моего документа. Если этого не сделать, то ваши изображения не будут грузиться и пользователь их не увидит!
Идем дальше, теперь нам необходимо отослать наше письмо. Для этого нам необходимо определить тело нашего письма и задать isHTML настройки. Следующий пример расширяет первоначальный базовый пример.
Дополнительные «тела» письма
Никогда не полагайтесь только на HTML при отправке писем, если ваше сообщение очень важное. Вы должны позаботиться о получателе и помимо HTML письма прикрепить и только text-only (только текст) версию сообщения, поскольку некоторые почтовые клиенты не умеют показывать HTML письма. Мы можем достигнуть такого эффекта добавляя дополнительные тела письма функцией AltBody класса PHPMailer. Давайте добавим текстовую версию вашего сообщения. Как только мы добавляем несколько тел письма – PHPMailer автоматически сформирует многослойное письмо.
Прикрепление файлов к письму
Прикрепить файл к письму – это чень легкая задача, если вы используете PHPMailer. Просто добавьте их письму точно также, как вы добавляли адреса. Вот пример:
Функция AddAttachment имеет 4 аргумента:
Путь до файла, естественно, полный путь до файла на диске, имя файла – название файла, который вы хотите прикрепить, кодирование – поумолчанию base64, тип заголовка – это тип заголовка, который вы хотите послать – поумолчанию – Application/octet-stream.
Как видите, все очень легко! Давайте перейдем с вами к использованию SMTP.
Использование внешнего(их) SMTP для работы с почтой средствами PHP
Сначала давайте обсудим использование внешнего SMTP вместо локального. В базовом примере мы с вами сделали config.php, где задали несколько вариантов для SMTP сервера. Если вы хотите указать больше SMTP серверов – сделать это можно также расширив config.php, установив $site[‘smtp_enabled’] = ‘enabled’; (включено).
В $site [‘smtp_host’] вы можете расширить список SMTP серверов, разделяя их точкой с запятой. Например:
Как я понимаю, PHPMailer попытается послать почту через первый сервер, если это не удается – через второй и так далее.
ЗАМЕЧАНИЕ:
Помните, что вы всегда можете включить авторизацию через SMTP или поменять порт в файле config.php.
Важное замечание, обращаю ваше внимание, что для отправки писем через SMTP необходимо использовать не стандартную функцию Send(), а функцию SMTPSend(). Например:
Проблемы с отправкой через SMTP
Есть много вариантов возникновения ошибок при работе с SMTP, в основном, все они касаются прав доступа:
К сожалению, я не уверен, что PHPMailer поддерживает соединение по протоколу POP перед соединением по SMTP. Если это создает проблему – свяжитесь со своим администратором и попросите хозяина релея прописать ваш IP адрес для сервера.
Использование qmail и Sendmail
Если вы хотите обойти функцию mail() PHP и использовать бинарные программы для работы с почтой, то вам необходимо определить тип почтового сервера, а затем PHPMailer запустит указанный бинарный файл, что, возможно, немного ускорит операции. Пример:
Как видите, это довольно легко! Давайте перейдем к построению простого списка адресатов.
Пример списка рассылки
Теперь, когда вы уже имеете достаточное представление о работе PHPMailer, давайте рассмотрим некоторые особенности списков рассылки. Выскажу несколько соображений о том, что вам может понадобиться при рассылке: настройка темы письма, тела письма. И, что наиболее важно, необходимо скрыть адреса получателей друг от друга.
Следующий пример предполагает, что у вас уже есть некоторая база данных со списком адресов и вы знаете как соединиться с базой MySQL. Пока мы предположим, что вы имеете что-то следующей структуры:
Предположим, что вы имеете 50 пользователей и хотите сделать настраиваемую рассылку по этим адресам. Следующий пример поможет вам в этом:
Разбор кода списка рассылки
Первая часть такая же, как и в нашем первом примере – мы подключаем необходимые файлы.
Далее, мы определяем тело нашего письма. Вы можете также читать его из файла, но мы, для простоты, держим его внутри этого скрипта.
Обратите внимание на условный тег . Позже, когда мы будем выполнять действия в цикле, командой str_replace() мы заменим этот тег на имя пользователя из базы данных.
Далее, мы инициализируем класс для работы с почтой.
Далее, мы получаем данные об адресатах из базы данных. И организуем цикл, в котором получаем последовательно каждый ряд в объект.
Теперь мы дошли до места, где происходит непосредственная отсылка почты. Черезвычайно важно разобраться в том, что мы здесь делам. Первая часть кода в основном занимается формированием переменной $member_name, которая будет содержать все данные текущего пользователя.
Следующая часть кода определяет предпочтения пользователя – HTML или plain-text. Если пользователь предпочитает HTML, то мы пошлем ему письмо ввиде HTML с включенным телом текстового письма. В противном случае – пошлем только текстовый вариант.
Внимательно проанализируйте текст выше, пока не достигните полного понимания. Вся необходимая информация для этого была в предыдущих частях нашего материала.
ЗАМЕЧАНИЕ:
Удостоверьтесь, что вы используете функции $mailer->ClearAddresses() и $mailer->ClearAttahements(), иначе адреса пользователей будут добавляться в конец списка.
Подведем итог
Этот обучающий курс должен дать вам хороший толчек в том, чтобы сделать свою жизнь проще при работе с почтой. И все это – благодаря превосходной библиотеке PHPMailer. Теперь вы можете посылать почту незадумываясь о заголовках и прочих трудностях.
Если вы настроите данный класс правильно, то в последующем, при создании других сайтов, вам не надо будет тратить свое время.
Я надеюсь, что вы найдете время посетить сайт класса PHPMailer и почитать документацию к нему и FAQ. Очень важно понять, как устроен класс и ознакомиться со взглядом разработчиков на него. К тому же, на сайте есть другая большая обучающая статья и некоторые примеры.
Рассылка сообщений посредством PHP может быть очень простой, а может быть очень сложной, все зависит от того, что и как вы собираетесь посылать. Кузьма Феськов 2014-09-11 http://sesmikcms.ru/resources/img/000/000/001/img_166_original-640-480.jpg http://sesmikcms.ru/pages/read/ischerpyvajuschaja-instrukcija-po-php-mailer/
Отличная статья! Может сделаете еще инструкцию по swiftmailer? Тоже очень хороший класс и работает быстрее phpmailer когда доходит речь до очень больших объемов.
Спасибо. Очень полезная статья. А как сделать рассылку по списку пользователей с учетом времени посещения? К примеру, мне надо давать периодические оповещения тем пользователям, которые не посещали сайт в течение 5-ти месяцев.
php_LibMail 2.11
28.02.2010 (последний раз редактировалось 28.06.2016)
сайт: http://webi.ru
условия использования: бесплатно
| скачать php_libmail 2.11 | Последняя версия (28.06.2016) |
| скачать php_libmail 1.6.1 | Старая версия |
Описание
Универсальный Php класс для отправки писем через SMTP, либо через стандартную php функцию mail().
Достаточно функциональный и простой в использовании.
История изменений
Пример использования
echo «Показывает исходный текст письма:
» ;
?>
Описание класса
Mail( [кодировка], [base64|8bit], [idna convert FALSE|TRUE] )
Начало работы с классом.
По умолчанию кодировка письма UTF-8, для отправки письма в другой кодировке укажите ее.
$mail = new Mail(»,»,true); // включение поддержки адресов в национальных доменах
Любой из этих параметров необязательный, чтобы оставить любой параметр по умолчанию, используйте пустые кавычки.
smtp_on( smtp_server, login, password, [ port ], [ timeout ] )
Включение отправки письма через SMTP.
Если хотите отправить письмо через SMTP, используйте эту команду.
Если нет необходимости отправлять через SMTP, проигнорируйте данную команду.
Subject( текст )
From( email )
Email от кого отправляется письмо.
Для добавления имен к адресам используйте разделитель ‘;’ (виктор;from@asd.com)
$mail->From( «from@asd.com» );
или пример с именем
$mail->From( «сергей;from@asd.com» );
To( email )
Кому отправляется письмо.
Чтобы отправить письмо нескольким адресатам, можно в качестве входящего параметра передать массив адресов либо вызывать несколько раз эту команду.
Для добавления имен к адресам используйте разделитель ‘;’ (виктор;to@asd.com)
// отправка одному адресату
$mail->To( «to@asd.com» );
// отправка нескольким адресатам без использования массива
$mail->To( «1@asd.com» );
$mail->To( «2@qwe.com» );
CC( email )
Кому отправить копию письма.
Чтобы отправить копию нескольким адресатам, можно в качестве входящего параметра передать массив адресов либо вызывать несколько раз эту команду.
// отправка одному адресату
$mail->CC( «to@asd.com» );
// отправка нескольким адресатам без использования массива
$mail->CC( «1@asd.com» );
$mail->CC( «2@qwe.com» );
BCC( email )
Кому оправить скрытую копию письма.
Так же как и в предыдущих командах можно отправить копию нескольким адресатам используя массив или вызывая несколько раз эту команду.
// отправка одному адресату
$mail->BCC( «to@asd.com» );
// отправка нескольким адресатам без использования массива
$mail->BCC( «1@asd.com» );
$mail->BCC( «2@qwe.com» );
Body( текст письма, [ text | html ] )
В эту команду помещается текст письма. По умолчанию письмо формируется обычным текстовым, для отправки письма в формате html нужно нужно указать это во втором параметре.
Attach( filename, [new filename], [mimetype], [disposition] )
// при прикреплении письма не указано другое имя файла, поэтому имя останется не измененным. не указан mime тип. вариант отображения в почтовом клиенте указан как прикрепленный файл
$mail->Attach( «C:/Documents/resume.doc», «», «», «attachment» );
autoCheck( boolean )
Включает/выключает проверку email адресов на валидность. По умолчанию включено.
$mail->autoCheck( false ); // проверка выключена
$mail->autoCheck( true ); // проверка включена
Organization( организация )
Поле для указания вашей организации.
$mail->Organization( «Моя фирма» );
ReplyTo( email )
на какой email можно ответить.
Для добавления имен к адресам используйте разделитель ‘;’ (виктор;victor@asd.com)
Priority( приоритет )
Приоритет письма. Важность. Дает информацию адресату понять, какие письма наиболее важны.
От 1 (высокая важность) до 5 (низкая важность).
Рекомендуемый приоритет 3.
Receipt()
Подтверждение о прочтении.
Некоторые почтовые клиенты могут отправить на обратный адрес письмо о том, что ваше сообщение получено или читается.
Отправка письма. После всех команд выполняется эта, она отправит письмо.
$mail->Send();
Для тестирования.
Возвращает текст письма вместе с заголовками.
Можно использовать вместо отправки письма не используя отправку Send(), возвратит текст письма и заголовки, готовые к отправке.
Если использовать после отправки письма, так же возвратит заголовки и текст, но если отправка была с помощью smtp возвратит еще и весь далог общения с сервером.
Можно сохранять в файл для ведения логов или вывести на экран.
Комментарии
28.07.2010 Александр
Отличный скрипт. Пользуюсь им уже давно. Спасибо автору скрипта за такое нужное дело.
06.09.2010 Алексей
+1 Просто ничего лучше в жизни не видел! 🙂 Автору просто зачет и огромное спасибо!
08.09.2010 Петро
Привет а форму как злабадать
18.12.2010 Дамир
Спасибо автору! Нужно было отправить файлы во вложении, через эту библиотеку все получилось просто и быстро:)
02.02.2011 Владимир
Автору респект
10.02.2011 Валентин
Не за что.
Спасибо за Класс, очень полезный.
17.02.2011 Александр
Добрый день.
Спасибо за класс.
Не подскажите как прикрепить динамически созданный файл? Например, файл pdf созданный с помощью tcpdf.
Спасибо.
17.02.2011 админ
Александр, к сожалению пока нет возможности отправить файл из буфера.
Перед отправкой сохраните файл физически, отправьте, а затем удалите его.
18.02.2011 Александр
Удалось отправить генерируемый pdf. Tcpdf позволяет получать документ в base64 mime multi-part
04.03.2011 MannishArt
спасибо автору больше,очень пригодилось)
04.03.2011 MannishArt
а вот хотел бы спросить,а как несколько аттачмантов сделать?
04.03.2011 Александр
Искал замену PHPMailer и вот нашёл замечательное решение. Спасибо! Сделано очень профессионально.
Спасибо за совет, я внес эту поправку в скрипт, только версию скрипта конечно не стал менять.
05.03.2011 MannishArt
Вот я написал в скрипте:
$m->Attach( «ПриходМарт(Разное).xls»,»», «attachment» ) ;
$m->Attach( «Mixer_march.jpg»,»», «attachment» ) ;
$m->Attach( «quote_march.txt»,»», «attachment» ) ;
А в письме приходит как:
(Разное).xls (560 Кб)
Mixer_march.jpg (2.5 Кб)
quote_march.txt (72 )
почему-то обрезается «ПриходМарт»
07.03.2011 MannishArt
а ещё можете подсказать,я отправляю из программы тему и заголовок скрипту,а в письме приходит Тема РїРёСЃСЊРјР° вот такое вот,это что-то с кодировкой?
07.03.2011 Илья
Да, возможно это проблемы с кодировкой. Попробуйте поменять, самые распространенные на данный момент это windows-1251 и UTF-8. Посмотрите в каком будет читаться и установите по умолчанию.

