Задать вопрос
@modxyou

Как добавить в скрипт заявки тему для письма?

Хостинг Джино
Есть форма для отправки заявок с сайта.
Проблема в том, что на почту приходят письма без темы, хотя тема прописана в скрипте.
Само письмо нормально отображается, но темы нет у письма, почтовик пишет: "Без темы"
Не пойму в чем дело, вроде все указано.

<?php

$recepient = "test@yandex.ru";
$recepient2 = "test1@yandex.ru";
$recepient3 = "test2@yandex.ru";
$sitename = "сайт.рф";

$name = trim($_POST["name"]);
$tel = trim($_POST["tel"]);

// НОВОЕ: Проверка на заполненность телефона
if (empty($tel)) {
    // НОВОЕ: Если телефон пустой, прекращаем выполнение скрипта
    die("102");
}

// НОВОЕ: Дополнительная проверка на минимальную длину телефона (например, не менее 10 символов)
if (strlen($tel) < 10) {
    die("103");
}

$ip = $_SERVER['REMOTE_ADDR']; // Получаем IP отправителя
$message = "Имя: $name \nТелефон: $tel\n\nIP отправителя: $ip"; // Добавляем IP в сообщение

$pagetitle = "Новая заявка с сайта \"$sitename\"";

// НОВОЕ: Отправляем письма только если все проверки пройдены
mail($recepient, $pagetitle, $message, "Content-type: text/plain; charset=\"utf-8\"\n From: $recepient");
mail($recepient2, $pagetitle, $message, "Content-type: text/plain; charset=\"utf-8\"\n From: $recepient2");
mail($recepient3, $pagetitle, $message, "Content-type: text/plain; charset=\"utf-8\"\n From: $recepient3");

?>
  • Вопрос задан
  • 134 просмотра
Подписаться 1 Простой 3 комментария
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Если используете функцию mail, то должны сами озаботиться соблюдением всех стандартов. В частности, все заголовки, в том числе и тема письма, должны быть закодированы согласно RFC 2047. В заголовках допускаются только символы из ASCII-128.
$subject = '=?UTF-8?B?' . base64_encode($pagetitle) . '?=';

А лучше используйте PHPMailer, он сам приведёт всё в нормальный вид.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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