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. Владислав1983 - 28 Февраля, 2016 - 19:31:53 - перейти к сообщению
Здравствуйте! Есть форма обратной связи, где имеется математическая капча http://f0005424[dot]xsph[dot]ru/landing/index.php . Сообщения с формы приходят на ту же страницу, где и находится форма в виде sweetalert. Обработчик формы находится на другой странице и включается в страницу с формой при помощи require_once. Также есть функция, которая не перезагружает страницу после нажатия "Отправить". Фактически, проверки основных данных нет в обработчике формы. ФИО, телефон модель iPhone, комментарии являются обязательными полями и проверятся через атрибут required HTML5. И достаточно того, что эти поля заполнены. В обработчике проверяется только капча. Я не совсем уверен, что в обработчике все гладко, но вроде все логично. И из-за этого всегда выдается сообщение "Дан не верный ответ". Если убрать капчу из формы и проверку из обработчика, то выдается сообщение "Ошибка", хотя ошибок нет. И при этом отправляется письмо на почту. Но, при следующих попытках даже с перезагрузкой страницы, чтобы капча обновилась, письмо на почту уже не приходит.
Сама форма находится на бесплатном хостинге, на котором я разрабатываю сайт с формой обратной связи. Возможно, что у хостинга есть ограничения. Или ограничения связаны с тем, что он бесплатный.
Страницы в архиве прикрепил
2. andrewkard - 29 Февраля, 2016 - 00:52:10 - перейти к сообщению
Ищите причину, такой ответ приходит в случае:
PHP:
скопировать код в буфер обмена
  1.  
  2. $_POST['res'] != $_SESSION['res']
  3.  


смотрите что тут: $_SESSION['res']
3. Владислав1983 - 29 Февраля, 2016 - 08:18:01 - перейти к сообщению
У меня есть еще одно мнение от другого человека, что проверка на ajax игнорирует эту строку.

Вы имеете ввиду знак проверки !=, когда дожен быть ==?
4. andrewkard - 29 Февраля, 2016 - 10:21:49 - перейти к сообщению
Я имею ввиду что в момент проверки они не равны. По этому и ответ: Дан не верный ответ
5. Владислав1983 - 29 Февраля, 2016 - 17:43:15 - перейти к сообщению
А как ты это понял? И почему они могут быть не равны? Условие как-то неправильно составлено. Или в сессии не те данные? Почему?
6. tsoi85 - 01 Марта, 2016 - 04:24:34 - перейти к сообщению
Правки в архиве.

 

Powered by ExBB FM 1.0 RC1