База знаний хостинга



Не отправляется почта через функцию mail()

<-- назад к списку вопросов

Мы рекомендуем использовать SMTP для отправки почты, но часто есть необходимость в использовании именно mail().

Для отправки писем через функцию mail() необходимо указывать корректный адрес отправителя в заголовке From (от кого).

* Корректный адрес - это существующий почтовый ящик на вашем домене.

Например:

From: no-reply@mydomain.ru - правильно (ящик no-reply@mydomain.ru должен быть создан в панели управления хостингом).

From: victor_bozofff@mail.ru - неправильно.

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

Пример 1

mail('кому@example.com''Тема письма''Сообщение'null,

   '-fno-reply@mydomain.ru');

 

Пример 2 

$to      'кому@example.com';

$subject 'Тема письма';
$message 'Сообщение';
$headers 'From: no-reply@mydomain.ru' " " .
    
'Reply-To: viktоr_bоzоfff@mail.ru' " " .
    
'X-Mailer: PHP/' phpversion();

mail($to$subject$message$headers);

В данном примере в Reply-To можно указать любой почтовый ящик. У получателя такого письма при нажатии на кнопку "Ответить" в почтовом клиенте именно этот ящик подставится в поле "Кому".