Почему при вводе mail почты, письмо через php не потправляется?

Здравствуйте!

Написал на PHP обратную связь и всё отлично работает, но вот одно НО, если вводить в поле email - "test@gmail.com", то всё работает, но если ввести "test@mail.ru", то письмо не отправляется вовсе.
Почта, куда приходит письмо, от Google.

<form id="application" action="php/send.php" method="POST" name="application ">
<input name="name" id="name" maxlength="20" placeholder="Введите ваше имя" required />
<input name="email" type="email" id="email" maxlength="40" placeholder="Введите ваш E-mail" required/>
<input name="telephone" type="Tel" id="telephone" maxlength="20" placeholder="Введите ваш телефон" required />
<button class="FormButton" type="submit" form="application"><i class="fa fa-envelope" aria-hidden="true"></i> Получить прайс </button>
</form>


<?php 

$sendto   = "the.ivan.smirnov@gmail.com"; // почта, на которую приходит письмо
$username = $_POST['name'];   // данные из поля с Имя
$usertel = $_POST['telephone']; // данные из поля Телефон
$usermail = $_POST['email']; // данные из поля Email

// Формирование заголовка письма
$subject  = "Новое сообщение";
$headers  = "From: " . strip_tags($usermail) . "\r\n";
$headers .= "Reply-To: ". strip_tags($usermail) . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html;charset=utf-8 \r\n";

// Формирование тела письма
$msg  = "<html><body style='font-family:Arial,sans-serif;'>";
$msg .= "<h2 style='font-weight:bold;border-bottom:1px dotted #ccc;'>Cообщение с сайта RECO</h2>\r\n";
$msg .= "<p><strong>От кого:</strong> ".$username."</p>\r\n";
$msg .= "<p><strong>Почта:</strong> ".$usermail."</p>\r\n";
$msg .= "<p><strong>Телефон:</strong> ".$usertel."</p>\r\n";
$msg .= "</body></html>";

// отправка сообщения
if(@mail($sendto, $subject, $msg, $headers)) {
	echo "<center><h1>Сообщение успешно отправленно</h1><br><h2>Мы свяжемся с вами в ближайшее время! </h2></center>";
} else {
	echo "<center><img src='img/ne-otprevleno.png'></center>";
}

?>
  • Вопрос задан
  • 432 просмотра
Пригласить эксперта
Ответы на вопрос 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Скорее всего, по набору признаков письмо попадает в спам. Несколько признаков могу назвать сразу.
Во-первых, в заголовке Subject используются символы с кодами, выходящими за пределы ASCII 0-127.
Во-вторых, в письме есть HTML-часть, но нет соответствующей PLAINTEXT-части.
В-третьих отсутствуют подписи SPF, DKIM и DMARK.
Ответ написан
secsite
@secsite
Безопасные и быстрые сайты
Кроме перечисленных Rsa97 причин, ещё одна из возможных:

$headers  = "From: " . strip_tags($usermail) . "\r\n";

Во From нужно подставлять адрес домена, с которого отправляется форма. (гуглим про недавнюю уязвимость в phpmailer)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы