Клиент не получает по электронной почте содержимое формы - PullRequest
0 голосов
/ 25 июля 2011

У меня есть простое сообщение формы, которое отправляется клиенту при отправке.

Они не получают форму в своем электронном письме.Похоже, что это не проблема спама, так как никто в их домене не получит содержимое, и они проверили свои фильтры спама.

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

Я звоню в службу поддержки хоста (mediaTemple), и они сразу думают, в чем проблема - что почтовые службы были включены для веб-сайта, но почта обрабатывается другиммашина (гугл).Включил почтовые сервисы в панели управления mediaTemple Plesk.Клиент по-прежнему не получает письма.Любые предложения?

Я пропустил несколько полей, но только для того, чтобы вы все могли получить представление о PHP:

$to = "me@null.net, client@theirwebsite.com";
$subject = "Web Site Feedback";

$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
$date_of_visit = $_POST['date_of_visit'];
$first_visit = $_POST['first_visit'];

$body = "From: $first_name $last_name\n Date of Visit: $date_of_visit\n First Visit: $first_visit\n";

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/plain; charset=UTF-8' . "\r\n";
$headers .= 'From: Client Name <client@theirwebsite.com>'. "\r\n";
$headers .= "Reply-To: " . "<client@theirwebsite.com>\r\n";
$headers .= "Return-path: client@theirwebsite.com";

mail($to, $subject, $body, $headers)

1 Ответ

1 голос
/ 25 июля 2011

Проверьте, не работает ли функция почты ...

if (!mail($to, $subject, $body, $headers)) {
   echo "Failed to send email...";
}

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

...