Как настроить форму на отправку по e-mail?

Рейтинг: 0Ответов: 1Опубликовано: 30.03.2011

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

Ответы

▲ 3

Для отправки письма существует стандартная функция (правда, не на всех хостингах она работает, если не работает, то рекомендую сторонний класс phpMailer источник, источник ):

mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )

где:

  • $to - получатель
  • $subject - тема письма ( рекомендую использовать так:
    '=?UTF-8?B?'.base64_encode($subject).'?='; если у вас кодировка другая, впишите другую
  • $message - тело сообщения
  • $additional_headers - опциональный ( необязательный ) параметр. о нём подробней

Если вы хотите отправить сообщение в виде html, то нужно в этот параметр записать следующее:

"Content-Type: text/html;charset='UTF-8'\r\nMIME-Version: 1.0\r\n"

если обычный текст, то:

"Content-Type: text/plain;charset='UTF-8'\r\nMIME-Version: 1.0\r\n"

Этого должно быть достаточно, чтобы отправить письмо.

UPD:

если вы хотите добавить кого-либо как получатель копии сообщения, нужно добавить в $additional_headers следующие строки:

$additional_headers .= "CC: a.pupkin@mail.ru, a.pupkin2@mail.ru\r\n"

если вы хотите добавить кого-либо как получатель скрытой копии сообщения (тот, кому вы отправили письмо не увидит что была еще послана копия), нужно добавить в $additional_headers следующие строки:

$additional_headers .= "BCC: a.pupkin@mail.ru, a.pupkin2@mail.ru\r\n"

если вы хотите добавить обратный адресс ( нужно в случае, если вы хотите что бы отвечали на письмо на другой адресс, не с того с которого было выслано письмо, нужно добавить в $additional_headers следующие строки:

$additional_headers .= "Reply-To: a.pupkin@mail.ru\r\n"