@luxurypluxury

Почему не приходят письма php?

Если выбрать в опенсервере в папку temp, то всё приходит корректно

Вот сам экшн формы:
$to = "mail@mail.mail";
$from = trim($_POST['email']);

$subject = 'Testing';
$message = htmlspecialchars($_POST['nachricht']);
$message = urldecode($message);
$message = trim($message);

$headers = "From: $from" . "\r\n" .
    "Reply-To: $from" . "\r\n" .
    "X-Mailer: PHP/" . phpversion();

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


Вот smtp настройки openserver:
641c1aefcf35b794745284.png
  • Вопрос задан
  • 112 просмотров
Пригласить эксперта
Ответы на вопрос 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
Отправка почты через дефолтный mail() глупая затея. Во первых, на продакшн сервере будут совершенно другие настройки почтового сервера, и не всегда их можно поправить и не всегда они подходят для нормальной работы.
Во вторых, вы не контролируете из кода процесс отправки, а только передаете серверу задачу на отправку, после чего полномочия пхп все... То есть отладка или выявление проблемы становится в разы сложнее, если вообще возможной.

Для нормальной отправки, а так же для контроля над всей цепочкой передачи сообщения, используются готовые протестированные и настроенные библиотеки, тот же phpMailer или Symfony Mailer, или любой другой настроенный инструмент для отправки почты. Все они обладают широким функционалом настройки, простым интерфейсом и понятной отладочной информацией. Тот же phpMailer в вербоуз моде расскажет вам все что происходит при соединении и отправке сообщения со всеми подробностями.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы