Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Почему не срабатывает отправка писем в форме обрат


Автор: Ron1212 9.2.2018, 18:48
Здравствуйте.

Помогите пожалуйста разобраться где может быть "загвоздка" в проблеме не срабатывания формы обратной связи для сайта , с вложением (прикрепляется файл) | HTML и PHP (скачал здесь https://proverstka.com.ua/blog/skript-formy-obratn... После заполнения всех полей формы на сайте, и нажатия кнопки "Отправить" на экран выводится "Данные отправлены!" но на почту письмо почему то не приходит. Скрипт работает на ajax, в файле send.php я менял во 2-й строке $to = 'info@proverstka.com.ua'; на свой адрес, а также удалял в 36-й строке $headers = "From: ".$email."\r\n"; потому что вроде бы почтовые сервисы из-за этого могут блокировать получение писем. А в 23-й строке engine.js менял в xhr.open("POST", "/send.php"); расположение send.php на путь, где он записан на моём сайте, но ничего не помогло. Помогите разобраться, почему письма не приходят на почту.

Может кто нибудь предложит свой рабочий вариант. Помогите с этой проблемой, очень необходима ваша помощь.

Автор: whatisnot 9.2.2018, 19:30
То что по ссылке спокойно можно в помойку. Если так проверять данные извне, то это не почта.

Автор: Ron1212 10.2.2018, 13:44
Причем ссылка? В моем сообщении есть файл скрипта:
Присоединённый файл  send.zip 3,24 Kb

Автор: whatisnot 10.2.2018, 13:56
Цитата(Ron1212 @  10.2.2018,  13:44 Найти цитируемый пост)
Причем ссылка?


При том, что ваш send.zip, это 100% копия костылей и дыр в коде, которые и в ссылке. 

Автор: krundetz 12.2.2018, 11:05
1. В PHP необходимо обязательно встроить валидацию данных, полагаться на валидацию на стороне клиента нельзя, тем более ее там и нет по сути
2. Вам нужно поэтапно проверить работу вашего  скрипта, а именно:
2.1 отправляет ли js данные на сервер
2.2 если js отправляет данные, то проверяете пришли ли они в php и в каком виде
2.3 если данные пришли в том виде в котором вы их ждете, то проверить что происходит при отправке
для этого хорошо бы увидеть что вернет функция mail которая есть в примере и в ваше коде, как это сделать можно прочесть здесь http://php.net/manual/ru/function.mail.php
2.4 если функция mail письмо отправляет то смотреть дальше стек отвечающий за обработку почту ваш MTA и ответ от MTA на котором лежит ваша почта

кстати почему вы выкладываете не тот код который у вас не работает?

а вообще статья которую вы взяли в качестве примера крайне бестолковая

вам стоит разобраться сначала в одной технологии php, а уже потом ,браться за js,а то получается вы и про js не можете утверждать что он отрабатывает на 100% ни про php

Цитата(Ron1212 @  9.2.2018,  18:48 Найти цитируемый пост)
, а также удалял в 36-й строке $headers = "From: ".$email."\r\n"; потому что вроде бы почтовые сервисы из-за этого могут блокировать получение писем.

 smile доверяй но проверяй

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)