Поле от кого php

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

У вас ошибка в коде, переменная $headers перезаписывается и вы теряете отправителя в заголовке! Прочтите внимательней документацию mail php.

3 ответа 3

 if (isset($_POST["email"])) < $email = $_POST["email"]; >if ($name == "" or $email == "") < echo "Заполните, пожалуйста, все поля!"; >else < $ip = $_SERVER["REMOTE_ADDR"]; $to = "mail@mail.ru"; $subject = "Заявка!"; $headers = "Content-type:text/plain; charset=utf-8; \r\n"; // заголовок собирается из нескольких строк, делаем разрыв строки используя \r\n $headers .= "From: $name "; // нужно было использовать конкатенацю - Ошибка №1 $message = "Имя: $name \n E-mail: $email \n IP отправителя: $ip"; $send = mail($to, $subject, $message, $headers); if ($send == true) < // функция отправки возвращает логическое true или false а не строку! Ошибка №2 echo "Поздравляем! Ваша заявка принята!"; >else < echo "Не удалось отправить, попробуйте снова!"; >> > ini_set('short_open_tag', 'On'); ?>

@LADYX ооооо, вижу у вас совсем всё плохо со знаниями php и программированием в целом, попробуйте вот так: $headers .= «From: Василий «; а Василий можете заменить на произвольный текст либо просто удалить! Я обновил ответ.

В $email ведь есть отправитель, вы можете подставить его в ответ.

$headers = "Content-type:text/plain; charset=utf-8; \r\n Reply-To: "; 

Связанные

Похожие

Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.7.27.43548

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Читайте также:  Html css шаблон чата

Источник

Отправка почты через PHPmailer (поле от кого)

Здравствуйте.
В ходе написания сайта столкнулся с серьезными проблемами при настройке обратной связи (умные люди говорят, так у всех). Большинство из них удалось решить однако осталась одна небольшая, но довольно неприятная.
Суть:
есть вот такой код:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
function sendemail($fromemail, $fromname, $toemail, $toname, $subject, $message) { date_default_timezone_set("Europe/Moscow"); // временная зона require "mailer/PHPMailerAutoload.php"; // подключили скрипт $mail = new PHPMailer(); // инициализация класса file_exists("/language/phpmailer.lang-ru.php") ? $mail->SetLanguage("ru", "/language/") : $mail->SetLanguage("en", "/language/"); // языковой пакет для ошибок $mail->isSMTP(); // указали, что работаем по протоколу смтп $mail->Host = "host"; // хост SMTP $mail->Port = "25"; // порт SMTP $mail->SMTPAutoTLS = false; $mail->SMTPDebug = 2; $mail->CharSet = "UTF-8"; // кодировка $mail->setFrom($fromemail, $fromname); // от кого $mail->addReplyTo($fromemail, $fromname); // кому ответить $mail->addAddress($toemail, $toname); $mail->Subject = $subject; // тема письма (заголовок) $mail->isHTML(false); $mail->Body = $message; if ($mail->send()) { $a = 'Отправка прошла удачно'; } else {$a = 'Письмо НЕ отправлено '.$mail->ErrorInfo;} return $a; }

Непосредственно отправку сообщения произвожу в отдельном файле с вызовом в нем этой функции и подключением файла с ней.
Так вот: если я отправляю письмо, указывая в переменной $fromemail адрес почты с того же сервера, где лежит сам сайт, то все проходит удачно. Если же, я укажу в $fromemail адрес почты mail.ru, то письмо не дойдет, хотя на экране будет надпись «Отправка прошла удачно».
Как пояснил администратор: сервер mail.ru сильно удивлен, что он получает письмо от нашего сервера, но с почты mail.ru (аналогично будет и с gmail — проверяли).
Однако так сложилось, что нам для общения с пользователями (а помимо обратной связи есть еще и общение через почту напрямую) удобнее использовать именно почту mail.ru.
Таким образом задача сводится к тому, чтобы в отправляемом формой сообщении никак не фигурировал адрес первой почты (с домена хостинга сайта). Возможно как-то либо скрыть этот адрес в поле «От кого», либо обойти такую своеобразную защиту от mail.ru и остальных почтовиков?
Прошу помощи. Заранее благодарен за ответы.

Читайте также:  Как задать цвет svg css

P.S. Хотя бы ReplyTo работает адекватно, т.е. для решения вопроса мне нужно хотя бы полностью скрыть от получателя реальный адрес отправления.

Источник

В поле от кого во входящих подставить адрес из переменной $fromEmail*

Здравствуйте, такой вопрос по PHP:
Письма на mail ру приходят, но только в поле «от кого» указывается адрес из переменной $to и если указать там переменную $fromEmail то письма не приходят ни куда. А если нажать на ответить в (maile ру) то ответ приходит как и надо на адрес $fromEmail.
Как всё таки сделать, чтобы в поле от кого во входящих был написан адрес из переменной $fromEmail ?

1 2 3 4 5 6 7 8 9 10 11 12
$headers = "Return-Path: .$fromEmail.">\r\n"; $headers .= "From: ".$fromName." .$to.">\r\n"; $headers .= "X-Priority: 3\r\n"; $headers .= "Reply-To: ".$fromName." .$fromEmail.">\r\n"; $headers .= "To: ".$to."\r\n"; $headers .= "MIME-Version: 1.0\r\n"; $headers .= "Content-Type: text/html; charset=\"" . $charset . "\"\r\n"; $headers .= "Content-Transfer-Encoding: 8bit\r\n"; mail($to, $subject, $message, $headers);

Вычислить адрес верхушки стека, адрес следующей команды, адрес переменной, адрес которой содержится в BX
Помогите решить следующие задачи: 1.Вычислить адрес верхушки стэка. 2.Вычислить адрес следующей.

Подставить значение в поле таблицы поле запроса
Здравствуйте, есть ли какая-то возможность подставить вместо поля в таблице поле с запроса? .

Если [911A]=51, то переслать поле длины 87(дес) с адреса 777 на адрес 321A иначе на адрес 421A
Если =51, то переслать поле длины 87(дес) с адреса 777 на адрес 321A иначе на адрес 421A

Подставить значение переменной
Для элементов формы документа: ИмяПункта1, ИмяПункта2. ИмяПункта5, нужно поставить свойство.

1) $fromEmail как выглядит? может нельзя отправлять такой формат, попробуйте оформить его так: ‘$fromEmail’
2) phpmailer-ом нельзя?

‘$fromEmail’ — не помогает и не помогает даже ,
сейчас попробую PHPmailer, но всё-же хочется разобраться с mail(); если можете — дайте 100% рабочий и проверенный пример заголовков, я подставлю их в свой скрип

Добавлено через 2 часа 49 минут
phpmailer помог, но хотелось бы без него разобраться.

Подставить значение в поле документа
Всем доброго времени суток! Такой вопрос, дорогие форумчане. Сразу прошу не серчать — я новичёк в.

В макросе подставить поле в структуре
Здравствуйте! пишу под контроллер на IAR C у меня есть описание структуры: typedef struct.

Подставить текущую дату в поле
В SQL Server Management Studio есть таблица Review с полем data(Datetime). Хотел сделать, чтобы.

Как подставить значение переменной
Как правильно написать, чтоб вместо send_form подставлялось значение переменной определенной в.

Источник

Поле «От кого» в письмах, отправленных с сайта

Подскажите, пожалуйста, как сделать, чтобы в поле «от кого» был не мой адрес почты, а адрес почты отправителя? Благодарю!

 if (isset($_POST["email"])) if($name=="" or $email=="")< echo "Заполните, пожалуйста, все поля!"; >else< $ip=$_SERVER["REMOTE_ADDR"]; $to /cdn-cgi/l/email-protection" data-cfemail="2548444c496548444c490b5750">[email protected]"; $subject = "Заявка!"; $headers = "Content-type:text/plain; charset=utf-8;"; $headers /cdn-cgi/l/email-protection" data-cfemail="b7dad6dedbf7dad6dedb99c5c2">[email protected]>"; $message = "Имя: $name\nE-mail: $email\nIP отправителя: $ip"; $send = mail($to, $subject, $message, $headers); if ($send == "true") < echo "Поздравляем! Ваша заявка принята!"; >else < echo "Не удалось отправить, попробуйте снова!"; >> > ini_set('short_open_tag', 'On'); ?> 

Ответы (2 шт):

\r\n"; $message = "Имя: $name\nE-mail: $email\nIP отправителя: $ip"; if(mail("[email protected]", "Заявка", $message, $headers)) echo "Ваша заявка принята"; else echo "Произошла ошибка, повторите попытку снова"; > else echo "Пожалуйста, заполните все поля"; ?> 
\r\n", $name, $email); $message = sprintf("Имя: %s\nE-mail: %s\nIP отправителя: %s", $name, $email, $ip); printf(mail("[email protected]", "Заявка", $message, $headers) ? "Ваша заявка принята" : "Ошибка при отправке"); > else printf("Заполните все поля"); ?> 

В поле from должен быть именно адрес почты, от которого почту может отправлять скрипт.

Иначе письмо с неверным адресом отправителя будет расценено как спам (а точнее спуфинг). С соответствующими действиями антиспам систем — указанием письма как спам, удалением сразу при получении и вплоть до блокировки приёма любых последующих писем с ваших адресов.

Если вы хотите в письме выразить пожелание программе-получателю письма отправлять ответы на другой адрес — для этого существует специальный стандартный заголовок Reply-To

Источник

Оцените статью