Простейшая форма отправки данных на почту при помощи HTML и PHP. Как отправить по электронной почте одно письмо сразу многим адресатам


Вам понравился материал? Вы можете угостить автора чашечкой ароматного кофе и оставить ему доброе пожелание 🙂


Ваше угощение будет обязательно доставлено до автора. Чашка кофе - это не много, но она согревает и придает силы творить дальше. Вы можете выбрать, чем угостить автора.

Чашка кофе из ПитСтопа за 60 руб.

Крепкий эспрессо за 110 руб.

Восхитительное Латте за 175 руб.

X Хотите оставить пожелание для автора?

Оставить пожелание Пропустить

Почти во всех случаях общение с государственными органами или юридическими лицами лучше осуществлять через заказное письмо. Такая форма общения всегда позволяет доказать, что Вы обращались со своим вопросом. Но как правильно направлять письма и потом доказывать?

Обязанность направления корреспонденции как заказное письмо неоднократно упоминается в действующем законодательстве РФ. Например, ч. 3 ст. 125 Арбитражного процессуального кодекса РФ устанавливает, что «истец обязан направить другим лицам, участвующим в деле, копии искового заявления и прилагаемых к нему документов, которые у них отсутствуют, заказным письмом с уведомлением о вручении «, или ч. 4 ст. 45 Жилищного кодекса гласит, что «собственник … по инициативе которых созывается общее собрание собственников помещений в многоквартирном доме, обязаны сообщить собственникам помещений … сообщение о проведении общего собрания … должно быть направлено каждому собственнику помещения в данном доме заказным письмом » также подобные нормы содержатся и в других нормативных актах.

Правильное уведомление стороны стало очень важным после изменения Гражданского кодекса РФ в 2013 году и введения новой статьи 165.1 «Юридически значимые сообщения» с этого момента ответственность за недоставленное сообщение легла на получателя.

Раньше как было, отправили Вам письмо по адресу прописки, а Вы его не получили. Например, в этом письме было предложение о выкупе Вашей доли в праве собственности квартиры. Т.к. Вы не проявили желание выкупить долю, то сделка состоялась без Вас. Вы узнаете и подаете иск в суд. Показываете документы, что 10 лет не живете по адресу прописки и суд встает на Вашу сторону, т.к. продавец должен был предпринять меры к Вашему розыску и сделка отменяется. В свое время очень распространенная схема мошенничества, т.к. денег то уже не будет. А сейчас? А сейчас все, подобная схема закрыта именно статьей 165.1 ГК РФ. Теперь Вы несете ответственность за то, что письмо должно быть Вами получено.

С момента принятия этой нормы усилилось внимание к факту подтверждения доставки письма адресату. Ранее варианта было два: уведомление о получении, которое приходилось долго ждать; информация с сайта почты России. Второй вариант является более оперативным уведомлением, но встал вопрос о документальном подтверждении данного доказательства. В суд стороны стали направлять копии экрана (скриншот) с сайта Почты России, с данными по получению письма и судье было необходимо проверять данную информацию проводя проверку.

Совсем недавно (начало февраля 2016 года) появилась возможность получения письменного подтверждения с сайта pochta.ru защищенное цифровое подписью. Распечатанное подтверждение имеет специальный цифровой код, действительность которого можно проверить.

Наши рекомендации: рекомендуем направлять корреспонденцию как заказное письмо, сохранять квитанцию как доказательство отправки и распечатывать с сайта pochta.ru информацию защищенную цифровой подписью. При соблюдении этой рекомендации сомнений в Вашем доказательстве не будет.

Если Вам необходимо в будущем доказывать получения не просто сообщения, а конкретного документа, например «Требование выкупить долю» или «Согласие на условия договора» или «Отзыв согласия на обработку персональных данных», то направляйте письмо не заказным, а ценным. При отправке ценного письма в описи будет указываться наименование направляемого Вами документа, что позволит впоследствии подтвердить факт его направления.

На сегодняшний день практически у каждого человека есть электронная почта (email), а то и несколько. При этом достаточно часто в электронной почте содержится большое количество важной информации. И ее потеря может быть хуже, чем если взять и отформатировать жесткий диск вашего компьютера. Поэтому забота о создании резервных копий, так называемых бэкапов, вашей почты - не менее важная задача, чем резервное копирование ваших документов . Но ее решение не столь тривиальное, как копирование файлов из одного места в другое. Даже если вы найдете файлы почтовых программ, в которых хранятся все ваши письма, вам сложно будет что-то с ними сделать. Попробуйте ответить себе на несколько вопросов: "как вы будете восстанавливать письма?", "как вам просмотреть одно из писем?", "как вы собираетесь искать нужное вам письмо в резервной копии?" и т.д. Практически на все вопросы нету однозначного ответа, или же он будет настолько сложен, что вы быстро от него откажитесь.

Рассматриваемый в обзоре класс утилит позволит вам не только сохранить ваши драгоценные письма в безопасном месте, но и выполнять с ними простые операции, такие как: просмотр, поиск и т.д.

Обзор бесплатных программ для создания бэкапа почты

MaiStore Home мощный инструмент резервирования почты

Позволяет создавать резервные копии всех сообщений электронной почты (email) из различных приложений и онлайн-сервисов, и хранить их в одном защищенном архиве . Утилита действительно умеет работать с огромными размерами. Это легко ощутить, для этого достаточно попробовать что-то поискать, и вы убедитесь, что скорость просто поражает. Она относится к разряду "один раз настроил - пользуешься". Утилита имеет достаточно гибкий интерфейс настройки восстановления из резервной копии. Так что вы всегда можете быстро восстановить все самое необходимое. Всегда помните, что утилита не создает резервные копии настроек учетных записей и контактов, хотя последнее вы всегда можете восстановить из писем.

Умеет создавать резервные копии:

  • Microsoft Outlook 2000, XP, 2003, 2007, 2010, 2013
  • Outlook Express, Windows Mail и Windows Live Mail
  • Microsoft Exchange Server 2003, 2007, 2010, 2013
  • Mozilla Thunderbird и SeaMonkey
  • POP3 and IMAP (including webmail services such as Gmail and Yahoo)
  • Microsoft Office 365 (Exchange Online)
  • .eml и другие файлы

Для продуктов такого рода, MailStore достаточно часто обновляется. Это дает уверенность, что через год вам не придется заново искать подходящую утилиту, и по новой все настраивать. В некоторых моментах пользовательский интерфейс сделан немного угловато. Но, тем не менее, утилиту достаточно легко и просто использовать. Вы можете читать письма прямо из резервной копии, при этом это будет так же легко, как если бы вы читали их из почтовых клиентов. Вы даже можете отвечать на сообщения прямо из MailStore. Можно сказать, что это программа подойдет пользователям любого уровня.

KLS Mail Backup простая и качественная программа для создания бэкапа почты

это простая и качественная утилита, предназначенная для создания резервных копий электронной почты (email) множества популярных почтовых клиентов. Она так же позволяет бэкапить профили различных интернет-программ. Утилита использует широко известный формат Zip для сжатия и хранения электронных сообщений. Так что вы всегда сможете напрямую получить доступ к вашим сообщениям. Процессы создания и восстановления резервных копий представлены специальными мастерами настройки. Даже самый неопытный пользователь сможет быстро разобраться что к чему, и начать использовать. KLS Mail Backup бесплатна только для личного использования.

KLS Mail Backup не умеет работать с протоколами POP и IMAP. Это значит, что вы не сможете напрямую с сервера сделать бэкап вашей почты.

Различные продукты для создания бэкапов...

MozBackup это утилита для создания резервных копий следующих программ: MozSuite/SeaMonkey, Mozilla Firefox, Mozilla Thunderbird, Netscape, Flock, Sunbird, Spicebird, PostBox и Wyzo. Она сохраняет почту, закладки, адресные книги, пароли и т.д.

Comodo Backup это общего назначения утилита резервного копирования, которая так же позволяет создавать бэкапы электронной почты (email). Так же вам предлагается бесплатно 5 Гб онлайн-хранилища. Comodo работает за счет клиентов, которые используют онлайн-хранилища на коммерческой основе. Она поддерживает Thunderbird, Microsoft Outlook, Windows Live Mail и OutLook Express. Она так же позволяет создавать резервные копии файлов и папок.

MailBrowserBackup это простая портативная программа, которая обнаруживает и предлагает создать резервную копию Internet Explorer, Mozilla Firefox (профиль), Flock, Windows Mail, Windows Contacts (Win 7), Windows Live Mail, Mozilla Thunderbird, Opera (браузер и почта), Apple Safari, Google Chrome, SRWare Iron, FileZilla FTP-клиент и Windows Live Messenger Plus.

В Windows 7 вам необходимо будет запускать программу от имени администратора или того аккаунта, который связан с Windows Contacts, в противном случае утилита не сможет создать бэкап для него.

Microsoft предоставляет бесплатную программу резервного копирования для Outlook , которая создает резервные копии ваших pst-файлов. Работает с Outlook 2002 и более поздними версиями.

Gmail Backup (сайт более недоступен) это опенсурсное решение, которое позволяет по средствам протокола IMAP создавать резервные копии ваших электронных писем.

Руководство по быстрому выбору (ссылки на скачивание бесплатных программ для создания бэкапов почты)

MailStore Home

Резервное копирование всех сообщений электронной почты из нескольких приложений и аккаунтов. Быстрый поиск. Легкость работы с бэкапами. Резервное копирование по протоколам POP3 и IMAP (включая веб-почты, такие как Gmail и Yahoo! Mail). Очень проста в использовании.
Требует Microsoft .NET.
-------------
http://www.mailstore.com/en/mailstore-home-email-archiving.aspx
5,5 MB 8.1 Free for private use only Windows 2000 / XP / Vista / 7 / 8

KLS Mail Backup

Множество популярных почтовых клиентов. Понятный и простой инструмент для создания бэкапов. Использует zip-архивы для хранения вашей почты, так что у вас всегда есть прямой доступ к письмам.
Не поддерживает протоколы POP и IMAP. Это означает, что вы не можете создать бэкапов прямо с почтового сервера.
magician_roman в Понятие "скрытая копия", учимся не делать глупости

К удивлению, многие люди, когда им требует отправить письмо сразу нескольким людям, просто перечисляют адреса в поле "Кому", это нормально, когда это письмо адресовано вашим коллегам или друзьям, но вот при рассылке писем группе клиентов, - вы таким образом показываете всем адреса и других получателей, фактически раскрывая свою адресную базу.

Любому из клиентов достаточно переслать это письмо вашему конкуренту и ваши контакты тут же утекут.

Странно, но многие далеко не глупые люди, с удивлением узнают, что если вам нужно отправить письмо множеству адресатов, чтобы они не знали друг о друге то для этого существует поле "Скрытая копия".

Например, для mail.ru это будет выглядеть так:

И так еще раз коротко: указали адреса в "кому" - всем видно кому вы отправили письма, указали в "скрытая копия" - каждый думает что письмо только ему.

И каждый получатель получит письмо где в поле "кому" будет только его адрес . Для других программ, если вы не можете найти где указать скрытую копию, то попросите кого-нибудь вам показать. Еще маленький момент, обязательно нужно указать один адрес в поле "кому", большинство программ или почтовых серверов вам не дадут отправить письмо без этого параметра.

И так, когда речь идет о рассылке предложения, новостей группе ваших клиентов - здесь практика использования скрытой копии однозначна, вы должны скрывать вашу адресную базу. Интересный момент с рассылкой письма вашим коллегам, здесь рекомендуют поступать по ситуации, например рассылка письма с просьбой прислать предложения (например по совершенствованию обслуживания клиентов) и если каждый коллега увидит, что такое же письмо получили и другие люди, то скорей всего отвечать не будет - понадеется на других, значит нужно использовать скрытую копию. Если же это поручение выполнить, то например указание в "кому" начальника вашего коллеги - просто сотворит чудеса, и ваше поручение будет выполнено.

Отдельный вопрос с поставщиками. С одной стороны указание всех получателей в копии, должно показать поставщику, что у вас есть выбор и он должен вам предложить хорошие цены. С другой стороны, менеджер получивший ваше письмо, видя что прислано не только ему, скорей всего отнесется к вашему запросу "прохладно". Лично по моему мнению, считаю что и в случае с поставщиками нужно использовать скрытую копию, хотя бы для защиты коммерческой тайны, но больше скорей для хороших отношений с менеджером поставщика.

Можете почитать недавний случай ошибки специалиста, когда все получатели увидели и других адресатов: Всем чмоки в этом чате , там правда народ солидный был - директора, но все же спама многие получили в ответ.

Ну и как всегда обсуждение в комментариях приветствуется.

Одной из самых востребованных функций на сайте является форма заявки или заказа, данные из которой отправляются на почту владельцу сайта. Как правило такие формы являются простыми и состоят из двух трех полей для ввода данных. Как же создать такую форму заказа? Здесь потребуется использование языка разметки HTML и языка программирования PHP.

Язык разметки HTML сам по себе несложен, нужно всего лишь разобраться в том как и где ставить те или иные теги. С языком программирования PHP все немного сложнее.

Для программиста создать такую форму не составит труда, а вот HTML верстальщику может показаться сложным некоторые действия.

Создаем форму отправки данных в html

Первая строка будет следующей

Это очень важный элемент формы. В нем мы указываем каким способом будут передаваться данные и какому файлу. В данном случае все передачется методом POST файлу send.php. Программа в этом файле соответственно должна принять данные, они будут содержаться в post массиве, и отправить их на указанный email адрес.

Вернемся к форме. Вторая строка будет содержать поле для ввода ФИО. Имеет следующий код:

Тип формы text, то есть пользователь сможет ввести или скопировать сюда текст с клавиатуры. Под параметром name содержится название формы. В данном случае это fio, именно под таким именем будет передаваться все, что пользователь введен в данноу поле. Параметр placeholder указывает на то, что будет записано в этом поле в виде пояснения.

Следующая строка:

Здесь практически все то же самое, но имя для поля указано email, а пояснении указано, чтобы пользователь в эту форму ввел свой адресс электронной почты.

Следующей строкой будет кнопка "отправить":

И последней строкой в форме будет тэг

Теперь соберем все вместе.





Теперь сделаем так, чтобы поля в форме стали обязательными для заполнения. Имеем следующий код:





Создаем файл, принимающий данные из HTML формы

Это будет файл с именем send.php

В файле на первом этапе нужно принять данные из пост массива. Для этого создаем две переменные:

$fio = $_POST["fio"];
$email = $_POST["email"];

Перед названиями переменных в php ставиться знак $, в конце каждой строки ставиться точка с запятой. $_POST это массив в который передаются данный из формы. В форме html при этом указан метод отправки method="post". Так, приняты две переменные из формы html. Для целей защиты своего сайта нужно провести эти переменные через несколько фильтров - функций php.

Первая функция преобразует все символы, которые пользователь попытается добавить в форму:

При этом новые переменные в php не создаются, а используются уже имеющиеся. Что сделает фильтр, он преобразует символ "<" в "<". Также он поступить с другими символами, встречающимися в html коде.

Вторая функция декодирует url, если пользователь попытается его добавить в форму.

$fio = urldecode($fio);
$email = urldecode($email);

Третей функцией мы удалим пробелы с начала и конца строки, если таковые имеются:

$fio = trim($fio);
$email = trim($email);

Существуют и другие функции, позволяющие отфильтровать переменные php. Их использование зависит от того, насколько вы опасаетесь того, что злоумышленник попытается добавить программный код в данную форму отправки данных на почту html.

Проверка данных, передаваемых от HTML формы в файл PHP

Для того, чотбы проверить, работает ли этот код, передаются ли данные можно просто их вывести на экран при помощи функции echo:

echo $fio;
echo "
";
echo $fio;

Вторая строка здесь нужна для того, чтобы разделить вывод переменных php на разные строки.

Отправляем полученные данные из формы HTML на почту при помощи PHP

Для отправки данных на почту нужно воспользоваться функцией mail в PHP.

mail("на какой адрес отправить", "тема письма", "Сообщение (тело письма)","From: с какого email отправляется письмо \r\n");

Например, нужно отправить данные на email владельца сайта или менеджера [email protected].

Тема письма должна быть понятной, а сообщение письма должно содержать то, что указал пользователь в HTML форме.

mail("[email protected]", "Заявка с сайта", "ФИО:".$fio.". E-mail: ".$email ,"From: [email protected] \r\n");

Необходимо добавить условие, которе проверит отправилась ли форма при помощи PHP на указанные адрес электронной почты.

if (mail("[email protected]", "Заказ с сайта", "ФИО:".$fio.". E-mail: ".$email ,"From: [email protected] \r\n"))
{
echo "сообщение успешно отправлено";
} else {
}

Таким образом программный код файла send.php, который отправит данные HTML формы на почту будет выглядеть следующим образом:

$fio = $_POST["fio"];
$email = $_POST["email"];
$fio = htmlspecialchars($fio);
$email = htmlspecialchars($email);
$fio = urldecode($fio);
$email = urldecode($email);
$fio = trim($fio);
$email = trim($email);
//echo $fio;
//echo "
";
//echo $email;
if (mail("[email protected]", "Заявка с сайта", "ФИО:".$fio.". E-mail: ".$email ,"From: [email protected] \r\n"))
{ echo "сообщение успешно отправлено";
} else {
echo "при отправке сообщения возникли ошибки";
}?>

Три строки для проверки, передаются ли данные в файл закомментированы. При необходимости их можно удалить, так как они нужны были только для отладки.

Помещаем HTML и PHP код отправки формы в один файл

В комментариях к этой статье многие задают вопрос о том, как сделать, чтобы и HTML форма и PHP код отправки данных на почту находились в одном файле, а не двух.

Для реализации такой работы нужно поместить HTML код формы в файл send.php и добавить условие, которое будет проверять наличие переменных в массиве POST (этот массив передается из формы). То есть, если переменные в массиве не существуют, то нужно показать пользователю форму. Иначе нужно принять данные из массива и отправить их адресату.

Давайте посмотрим как изменить PHP код в файле send.php:



Форма заявки с сайта


//проверяем, существуют ли переменные в массиве POST
if(!isset($_POST["fio"]) and !isset($_POST["email"])){
?>





} else {
//показываем форму
$fio = $_POST["fio"];
$email = $_POST["email"];
$fio = htmlspecialchars($fio);
$email = htmlspecialchars($email);
$fio = urldecode($fio);
$email = urldecode($email);
$fio = trim($fio);
$email = trim($email);
if (mail("[email protected]", "Заявка с сайта", "ФИО:".$fio.". E-mail: ".$email ,"From: [email protected] \r\n")){
echo "Сообщение успешно отправлено";
} else {
echo "При отправке сообщения возникли ошибки";
}
}
?>

Существование переменной в POST массиве мы проверяем PHP функцией isset(). Восклицательный знак перед этой функцией в условии означает отрицание. То есть, если переменной не существует, то нужно показать нашу форму. Если бы я не поставил восклицательный знак, то условие дословно означало бы - "если существует, то показать форму". А это неправильно в нашем случае. Естественно, что вы можете переименовать его в index.php. Если будуту переименовывать файл, то не забудьте переименовать название файла и в строке

. Форма должна ссылаться на эту же страницу, например index.php. В код я добавил заголовок страницы.

Частые ошибки, возникающие при отправке PHP формы с сайта

Первая, наверное самая популярная ошибка, это когда вы видите пустую белую страницу без сообщений. Это означает, что вы допустили ошибку в коде страницы. Вам нужно включить отображение всех ошибок в PHP и тогда вы увидите, где допущена ошибка. Добавьте в код:

ini_set("display_errors","On");
error_reporting("E_ALL");

Файл send.php должен запускаться только на сервере, иначе код просто не будет работать. Желательно, чтобы это был не локальный сервер, так как он не всегда настроен на отправку данных на внешний почтовый сервер. Если вы запустите код не на сервере, то вам отобразиться код PHP прямо на странице.

Таким образом, для корректной работы я рекомендую поместить файл send.php на хостинг сайта. Там, как правило, все уже настроено.

Еще одна частая ошибка, когда появляется оповещение "Сообщение успешно отправлено", а письмо не приходит на почту. В этом случае нужно внимательно проверить строку:

if (mail("[email protected]", "Заказ с сайта", "ФИО:".$fio.". E-mail: ".$email ,"From: [email protected] \r\n"))

Вместо [email protected] должен быть email адрес на который нужно отправить письмо, а вместо [email protected] должен быть существующий email данного сайта. Например для сайта сайт это будет . Только в этом случае письмо с данными из формы будет отправлено.

Вероятно, Вы уже обращали внимание, что при получении писем от некоторых авторов в разделе «кому» стоит список из нескольких десятков имейлов разных людей. Причем ни Вы, ни эти люди не давали своего согласия на то, чтобы эти имейлы были «засвечены». Естественно, кто-то из адресатов, отпишется от данной рассылки (нам всем надоел поток спама на наши почты). Но одно безусловно – все получатели отнесутся к автору рассылки, как к человеку непрофессиональному. И вряд ли согласятся принять его предложение.


Как же сделать так, чтобы не отправлять каждому адресату письмо отдельно и в то же время «не светить всех перед всеми»?
Практически любой почтовый сервис позволяет это сделать.

Рассмотрим эту возможность на примере самой популярной для деловых рассылок почте gmail.com

Обычно для отправки письма вы пользуетесь окном «Написать». Нажав на него, видите новое окно «Новое сообщение», в которое и вставляете все, что необходимо для создания и отправки самого письма.

В окно «Получатели» обычно вставляем имейлы наших адресатов.




Копия означает «точная копия». Это поле используется, когда вы просто хотите отправить письмо кому-то, кто не является основным получателем. Таким образом, вы можете держать человека в курсе, давая ему при этом знать, что отвечать на письмо не обязательно. Но все получатели данного письма видят адреса (и даже имена) друг друга.


Скрытая же копия означает «точная скрытая копия». Она работает так же, как и Копия, но в этом поле все адреса получателей скрыты.

Таким образом, использование этого поля – один из лучших способов отправить письмо большому количеству людей и соблюсти конфиденциальность. А значит, и не испортить отношение с ними. Используя эту возможность, можно вставить до 30 имейлов. А это значит, что одним нажатием кнопки вы можете отправить данное письмо сразу 30 адресатам, не показывая их имейлы.

И еще, при необходимости, можно вставить в тело письма картинку (4 ) или прикрепить файл (5 ).

Именно эта почта дает максимальное количество возможностей для редактирования.



Аналогично можно отправить одновременно нескольким адресатам письмо и на почте yandex.ru.

Только возможностей для редактирования текста письма на этой почте меньше. Поэтому я покажу только порядок действий, необходимых для отправки писем.

Нажимаете на «Написать» и далее в окне «Кому» (1 ) вставляете имейл первого адресата, а затем выбираете функцию «Копия» (2 ) или «Скрытая копия» (3 ). В зависимости от того хотите ли вы, чтобы все получатели вашего письма увидели все имейлы или сохраняете их право на конфедициальность адресов, выбираете одну из функций. Чтобы добавить каждый следующий имейл в список, необходимо нажать на кнопку с изображением человечка с «плюсиком» перед ним (4 ). Тогда из выпавшего списка можете выбрать своих постоянных адресатов или вписать их имейлы вручную.

Картинки можно загрузить с Яндекс Диска и файлы прикрепить тоже, как обычно.

Нажимаете на кнопку «Написать», появляется окно, в котором при нажатии мышкой в окне «Кому» (1 ), появляется выпадающий список с перечнем ваших постоянных адресатов (2 ). Можете выбрать из этого списка нужного. Или просто вставить желаемый имейл адресата вручную.