Intereting Posts
Как безопасно осуществлять аутентификацию на основе токенов для доступа к ресурсам сайта (т.е. функциям и данным), которые разрабатываются в PHPFox? Кнопка WooCommerce Plus / Minus в корзине показывает с перерывами Diggbar modrewrite. Как они передают URL-адреса через modrewrite? Вызовите внешнюю функцию API от контроллера, LARAVEL 4 PHP Необходимо рекурсивное изменение массива Как передать переменные с одной страницы php на другой без формы? Насколько важно отключать переменные в PHP? Как отключить глобальные переменные. PHP, PDO и исключения Как я могу вызвать вызовы API Win32 с PHP? Поиск базы данных MySQL с несколькими полями в форме Невозможно соединить эллиптическую кривую Diffie-Hellman с javascript Наличие цикла PHP-скрипта навсегда выполняющего задания на работу из очереди Вставка столбцов NULL в NOT NULL со значением по умолчанию PHP mail: как переопределить или обходить настройку mail.log

Не удалось выполнить доставку почты: отправка сообщения отправителю

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

Вот код:

<?php if(isset($_POST['submit'])) { if(trim($_POST['first-name']) == '') { $hasError = true; } else { $name = trim($_POST['first-name']); } //Check to make sure that the last name field is not empty if(trim($_POST['last-name']) == '') { $hasError = true; } else { $lname = trim($_POST['last-name']); } //Check to make sure sure that a valid email address is submitted if(trim($_POST['email']) == '') { $hasError = true; } else if(!preg_match("/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i", trim($_POST['email']))) { $hasError = true; } else { $email = trim($_POST['email']); } //Check to make sure that the phone field is not empty if(trim($_POST['tel']) == '') { $hasError = true; } else { $phone = trim($_POST['tel']); } //Check to make sure that the phone field is not empty if(trim($_POST['company']) == '') { $hasError = true; } else { $company = trim($_POST['company']); } foreach (array($_POST['q1']) as $value) { $q1 = $value[0]; $q2 = $value[1]; $q3 = $value[2]; } //If there is no error, send the email if(!isset($hasError)) { $to = 'me@host.com'; $recipient = $email; $subject = 'Subject'; $headers = "From: Me\n" . $to . "\r\n"; $headers .= "Reply-To: ". $to . "\r\n"; $headers .= "Return-Path: ". $to . "\r\n"; $headers .= "MIME-Version: 1.0\r\n"; $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n"; $msg1 = "First Message"; $msg2 = "Second Message"; //Send Email mail($recipient, $subject, $msg2, $headers); mail($to, $subject, $msg1, $headers); $emailSent = true; } } ?> 

Related of "Не удалось выполнить доставку почты: отправка сообщения отправителю"

путь возврата задается mta на основе отправителя конверта, вы не можете просто установить это в заголовках самостоятельно. Вы можете попытаться установить отправителя конверта с помощью аргумента $ Additional_parameters функции почты. См. Пример № 3 на http://www.php.net/manual/en/function.mail.php.

В вашем случае это будет что-то вроде

 mail($recipient, $subject, $msg2, $headers, "-f $to"); 

В некоторых системах переопределение отправителя конверта с использованием -f ограничено. В этом случае вам, вероятно, придется переключиться на отправку почты через SMTP вместо вызова двоичного файла sendmail через mail ().