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

У меня есть контактная форма на html-странице.Данные формы отправляются на страницу PHP, которая отправляет информацию на адрес электронной почты.Он работает для адресов * @ gmail, *@hotmail.com, но у человека, которому нужно его получить, настроен Outlook для своего адреса website.com, и он не работает.Есть ли где-то еще настройки?

Вот код PHP:

<?php

$EmailFrom = "myname@website.com";
$EmailTo = "receiver@website.com";
$Subject = "Website Contact Form";
$Name = Trim(stripslashes($_POST['name'])); 
$Location = Trim(stripslashes($_POST['location'])); 
$Phone = Trim(stripslashes($_POST['phone'])); 
$Email = Trim(stripslashes($_POST['email'])); 
$Comments = Trim(stripslashes($_POST['comments'])); 



// prepare email body text
$Body = "";
$Body .= "Name: ";
$Body .= $Name;
$Body .= "\n";
$Body .= "Location: ";
$Body .= $Location;
$Body .= "\n";
$Body .= "Phone: ";
$Body .= $Phone;
$Body .= "\n";
$Body .= "Email: ";
$Body .= $Email;
$Body .= "\n";
$Body .= "Comments: ";
$Body .= $Comments;
$Body .= "\n";


// send email 
$success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>");

// redirect to success page 
print "<meta http-equiv=\"refresh\" content=\"0;URL=contactthanks.php\">";

?>

1 Ответ

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

Этот вопрос возникает довольно часто.

Существует большая вероятность того, что почтовый клиент (в данном случае outlook) настроен на фильтрацию сообщений, в которых отсутствуют надлежащие заголовки.Это может быть в точке клиента или при подключении к серверу во время SMTP.Основная суть проблемы заключается в том, что базовая функция ядра php mail() почти повсеместно недоверчива из-за ее возможности злоупотребления спаммерами.

Вам следует попробовать использовать такую ​​библиотеку, как PHPMailer дляпоможет правильно настроить ответ и другие заголовки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...