@rinatoptimus

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

Сперва письма приходили, потом добавил пару строк и приходить перестали, при этом Код состояния - 200 OK, параметры передаются, появ-ся сообщение на странице, что сообщение отправлено.
В Спаме писем не появляется. Шлю на gmail, пробовал и на мейлру.
<!DOCTYPE html>
<meta charset="UTF-8">
<form action="obrabotka.php" method="post" name="form1">
    Введите Ф.И.О.:&nbsp;<input type="text" name="fio"><br><br>
    Введите пароль:&nbsp;<input type="password" name="pass"><br><br>
    Введите e-mail:&nbsp;&nbsp;&nbsp;<input type="text" name="email"><br><br>
    Выберите вариант носителя информации:<br>
    <input type="radio" name="disc" value="cd">CD<br>
    <input type="radio" name="disc" value="dvd" checked>DVD<br><br>
    Укажите какие курсы вы хотите видеть на диске:<br>
    <input type="checkbox" name="check[]" value="Курс по созданию сайта; ">Курс по созданию сайта.<br>
    <input type="checkbox" name="check[]" value="Курс по созданию книг">Курс по созданию книг.<br>
    <input type="checkbox" name="check[]" value="Курс по созданию документов">Курс по созданию документов.<br>
    <input type="checkbox" name="check[]" value="Курс по созданию папок">Курс по созданию папок.<br>
    <input type="checkbox" name="check[]" value="Курс по созданию статей">Курс по созданию статей.<br>
    <input type="checkbox" name="check[]" value="Курс по созданию текстов">Курс по созданию текстов.<br>
    Укажите тип доставки:<br>
    <select name="delivery" size="1">
        <option value="Срочная">Срочная</option>
        <option value="Обычная">Обычная</option>
    </select>
    <br><br>
    Введите свой домашний адрес и примечания:<br>
    <textarea name="address" rows="5" cols="30"></textarea><br>  
    <input type="submit" value="Отправить">
</form>

<meta charset="UTF-8">
<?
$recipient = "почта@gmail.com";
$subject = "Заказ";
$message = "<html>\n<body>\n\n<b>".$_POST["fio"]."</b>, установил пароль - <b>".$_POST["pass"]."</b>\n
Указал свой адрес - <b>".$_POST["email"]."</b>\n
Выбрал вариант носителя - <b>".$_POST["disc"]."</b>\n";

$check = '';
if (!empty($_POST["check"]) && is_array($_POST["check"]))
{
    $check = implode(" ", $_POST["check"]);
}"

Хочет видеть на диске следующие курсы: <b>".$check."</b>\n
Хочет вариант доставки - <b>".$_POST["delivery"]."</b>\n
Адрес и примечание - ".$_POST["address"]."\n</html>\n</body>\n";
//$headers = 'MIME-Version: 1.0' . "\r\n" . 'Content-type: text/html; charset=windows-1251' . "\r\n" . 'From: ' . $_POST["email"];
$headers = 'MIME-Version: 1.0' . "\r\n" . 'Content-type: text/html; charset=utf-8' . "\r\n" . 'From: ' . $_POST["email"];
$verify = mail($recipient, $subject, $message, $headers);
if ($verify == true)
{
echo "<p>Сообщение отправлено</p>";
}
else
{
echo "<p>Сообщение не отправлено</p>";
}
?>

Отсылаю с Hostinger. Зашел посмотреть почтовые логи:
9780ea39314044b8b3d3d2c0ee3dc90c.png
У не дошедших писем написано php:20
ОБНОВЛЕНИЕ: насколько я понял в данном случае MAMP (Mac OS), в настройках нужно копаться, кому интересно, подробнее здесь www.patchworkoftips.com/send-email-mamp-localhost/3902
Но я просто завел почту на хостинге и тестирую.
  • Вопрос задан
  • 555 просмотров
Решения вопроса 2
kapuletti
@kapuletti
Через mail функцию отправляются анонимные письма!

Естественно, все почтовые сервисы на такие письма смотрят очень пристально и с подозрением, ведь каждый может представиться хоть кем и отправить все что угодно. Не рекомендую отправлять письма таким образом. Любое безобидное словосочетание или ссылка может быть профильтрована почтовым сервером и письмо даже не появится в папке Спам.

Отправляйте почту через SMTP, либо через специальные сервисы, у которых есть API, в случае если это рассылки (mailchimp, unisender).
Ответ написан
Комментировать
dimonchik2013
@dimonchik2013
non progredi est regredi
вроде как phpmailer.worxware.com рулит для пыха

а у вас - ограничения хостинга просто
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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