Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Форма обратной связи
Форумы портала PHP.SU » » Вопросы новичков » Форма обратной связи

Страниц (1): [1]
 

1. vadsim - 20 Апреля, 2017 - 13:49:43 - перейти к сообщению
Добрый день!
Помогите исправить обработчик на РНР в форме обратной связи. К сожалению сам с РНР, мягко говоря, на Вы.
А проблема в следующем.
У нас только один почтовый ящик и в его настройках, на сервере хостинга, указана переадресация на почту Яндекса.
Но пересылается на Яндекс только примерно половина писем, остальные нет. Т.е. ВСЕ входящие письма есть в ящике на хостинге, а на почте Яндекса - только половина.

В службе поддержки хоста проверили и написали:
ВСЕ письма поставлены в очередь почтовой службы Яндекс, однако на части из них получены отказы в доставке, поскольку форма обратной связи сайта установила в письме в качестве заголовка отправителя email посетителя сайта или пустое.
Письмам с такими отправителями в заголовках письма, при отправке с любого, не только с нашего виртуального хостинга, будет отказано в доставке почтовой службой Яндекс для предотвращения спуфинга - подделки отправителя письма.
Рекомендуем Вам пересмотреть исходный код формы обратной связи и изменить его таким образом, чтоб в качестве отправителя письма всегда устанавливался адрес info@fanatgusyatnik.ru (существующий на хостинге), а электронный адрес посетителя сайта добавлялся, например, в заголовок "Reply-to:".

Почтовый адрес на сайте info@fanatgusyatnik.ru перенаправлен на fanat1959@yandex.ru.
Помогите пожалуйста поправить (добавить) код обработчика по совету хостинга.
Сам не понимаю куда чего прописывать.
Файл обработчика прикрепил.
Если еще что-то нужно, то сообщите - выложу.
2. Мелкий - 20 Апреля, 2017 - 14:02:27 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $mail_head = "From: <".$send_mail.">"."\n";

Заменить на
PHP:
скопировать код в буфер обмена
  1. $mail_head = "From: info@fanatgusyatnik.ru"."\n";
  2. $mail_head .= "Reply-to: ".$send_mail."\n";
3. vadsim - 20 Апреля, 2017 - 17:14:14 - перейти к сообщению
Спасибо.
Но не понял, что надо сделать.
По первому. Ну скопировал эту строку, а вставлять то ее куда?
По второму. Что на что заменить и куда вставлять?

ИЛИ
вместо
$mail_head = "From: <".$send_mail.">"."\n";
вставить
$mail_head = "From: info@fanatgusyatnik.ru"."\n";
$mail_head .= "Reply-to: ".$send_mail."\n";

Пробел и точка во второй строке после $mail_head должны быть?
4. Мелкий - 20 Апреля, 2017 - 17:37:18 - перейти к сообщению
Первая строка у вас в коде сейчас, заменить надо на эти две.
Пробел без разницы, а точка обязательна.
5. vadsim - 20 Апреля, 2017 - 17:54:00 - перейти к сообщению
Все понял.
Еще раз ОГРОМНОЕ ВАМ СПАСИБО текстом. Жаль, что не могу добавить Вам Спасибку (мало сообщений).
К сожалению проверить сработает это или нет можно будет узнать не сразу.
У меня лично проверки через форму ВСЕ попадали на Яндекс, а у некоторых нет и может так случиться, что сегодня у всех попадут.
Поэтому через какое-то время, скорее всего завтра, сравню количество полученных писем на сервере хоста и на почте Яндекса.
Еще раз Большое Вам спасибо.

 

Powered by ExBB FM 1.0 RC1