Webform не отправляет, а перенаправляет на себя


8

Веб-формы моего будущего производственного сайта Drupal перестали сохранять материалы; вместо этого он возвращается на ту же страницу, дополненную введенными значениями. У меня нет графика, когда он перестал работать. В среде песочницы Webform 7.x-3.17 работает нормально.

Я ищу некоторые предложения для дальнейшей отладки.

Я пробовал следующее, но безуспешно:

  • Отключение любых модулей, которые ссылаются на веб-форму (в частности, шаблон веб- формы и проверка веб-формы и мой собственный пользовательский модуль, который использовался hook_form_alter).
  • Обновление до последней веб-формы (да, я помню, что использовал update.php).
  • На основе документации , в сочетании hook_form_alter($form, &$form_state)с array_unshift($form['#submit'],'my_custom_submit')для вставки пользовательского обратного вызова, где я звонил, drupal_build_form($form['form_id']['#value'],$form_state)чтобы эмулировать отправку.
  • Очевидно, что очистка кеша происходит последовательно.
  • Обеспечение публикации веб-формы.
  • Написание простого модуля для простого мониторинга $form_state['executed'](он всегда возвращает false).
  • Проверка моего сервера error_logна SSH и FTP.
  • Проверка отчетов> Последние сообщения журнала.
  • Новое: попытался отключить и удалить Webform, удалить старые файлы Webform и установить новую новую версию Webform; не хорошо.

Я почти уверен, что проблема не изолирована от Webform, поэтому нет смысла публиковать сообщения в их очереди.

Какие еще методы отладки я могу использовать для устранения этой ошибки? Если я отключаю каждый модуль без деинсталляции, необходима ли целая резервная копия FTP или только SQL?

РЕДАКТИРОВАТЬ: Еще несколько вещей, которые я пробовал согласно предложениям (безуспешно)

  • Явно определяя $ cookie_domain и $ base_url в settings.php
  • Просмотр модулей Trigger и Action на предмет возможных переадресаций с ошибками

Вы проверили наличие триггера / действия или правила, которое вызывает переадресацию, которая может давать сбой?
Патрик Кенни

@PatrickKenny К сожалению, нет, на страницах пользовательского интерфейса модуля Trigger или Action нет потенциальных клиентов.
Морган Делани

Убедитесь, что вы используете правильный файл settings.php, что значения $ base_url и $ cookie_domain установлены правильно, я рекомендую использовать несколько папок настроек для ваших разных настроек. У каждого есть своя база данных, $ base_url и $ cookie настройки домена. По моему скромному мнению, облегчает поиск неисправностей.
stefgosselin

Ответы:


2

У меня никогда не было проблем с модулем Webform, но если бы это случилось со мной, я бы дважды проверил sites / default / setting.php, чтобы увидеть, есть ли какие-либо настройки для явного $base_urlили $cookie_domain. Последнее очень маловероятно, так как у вас, вероятно, будут проблемы с входом в систему.


Dang. Я попытался добавить это внизу сайтов / default / settings.php: pastebin.com/94PBeeiG . Это не сработало, но спасибо за ответ! (Я, конечно, в отчаянии.)
Морган Делани

1

Я была такая же проблема. Как и Деннис, проблема была вызвана размещением псевдонима URL на узле веб-формы. Когда я удалил псевдоним и сделал полный URL, тогда он работал просто отлично. В моем случае возник конфликт, потому что выбранный мной псевдоним URL был равен имени каталога на моем сайте. Поэтому я мог использовать другой псевдоним, и он работал нормально. Я просто не могу использовать желаемый псевдоним, если я не переименую конфликтующий каталог на моем сайте.


0

Я только что получил именно эту проблему. Я обнаружил, что проблема заключалась в том, что форма изменялась таким образом, чтобы веб-формы не могли ее понять. Насколько я могу судить, изменения не повлияли на $ form_state, но изменение формы $ все еще было достаточно, чтобы все сломать.

Я еще не нашел обходной путь. Я обновлю свой ответ, если я сделаю.

Обновление: в качестве обходного пути я использовал #prefix и #suffix для добавления разметки к элементам вместо помещения их в контейнеры форм. Это решило проблему.


У меня аналогичная проблема здесь , причем наличие определенных полей удалить #nodeэлемент, который разрушает представление / проверки.
NJP

0

Я хотел добавить свои два цента стоимостью здесь. У меня была такая же проблема на сайте разработчика. Сайт скоро заработает, но я проверял функциональность и получил ту же самую проблему.

Проблема была вызвана размещением псевдонима URL на узле веб-формы. Когда я удалил псевдоним и выполнил полный URL-адрес (mysite.com/?q=node/8), он работал просто отлично.

Кроме того, у меня не включены чистые URL-адреса, что может решить проблему с псевдонимом URL-адреса.

Но я хотел выбросить это кому-нибудь еще с проблемой. , ,


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.