Персональная страница shra, блог фриленсера, веб-разработчика на PHP. Здесь я делюсь своим опытом и мыслями, провожу опыты над людьми, собираю нематериальные свидетельства собственной глупости. Используя примеры программного кода с данного сайта, вы принимаете всю ответственность за возможные последствия их использования, включая ваше психическое здоровье и интересы третьих лиц.
Браузер сообщает об ошибке всплывающим окном вроде того, что на скриншоте. Сообщается, что AJAX завершен неправильно. Но основной симптом — что не работают вообще какие либо транзакции, связанные с работой с формами.
А в логах Drupal вы видите загадочное сообщение — «неверные POST данные формы».
Причины могут быть различные и решения соответственно тоже.
Если не работает форма, связанная с каким то одним объектом, например, редактор недавно созданного представления (объекта модуля views), или редактора нового типа публикации, то поможет удаление и создание объекта с нуля.
Если проблема связана с ошибкой генерации URL сайта — инициализации глобальной переменной $base_url, то можно попытаться установить значение этой переменной в settings.php. Там есть соответствующий блок, посвященный этой переменной.
Если не работают вообще все формы (отправка данных, взаимодействие компонентов через ajax, загрузка картинок, новых элементов формы и т.п.), то проблема скорее всего связана с таблицей кеша форм. Очистите таблицу и/или почините её через доступный вам инструмент работы с базой данных.
Что делают в большинстве случаев после успешного submit данных формы? Вариантов два - либо показывают системное сообщение drupal_set_messge(), либо производят переадресацию на некую страницу с результатами.
Первый вариант почти всегда выглядит неказисто, ...
При возникновении ошибок, во время проверки формы друпал выполняет две вещи, которые отражаются на фронт-энд - добавляет сообщение об ошибке в стек сообщений и маркирует классом error поле, содержащее ошибку.
Если форма находится далеко от места вывода ...
Друпал не позволяет менять длину текстового поля после создания. Функция field_update_field также нам не поможет - будет сгенерирована соответствующая ошибка, что поле уже содержит данные и изменить его длину нельзя.
Это можно проделать вручную, зная ...
В Webform для Drupal 7 нет отдельного типа элемента, который отвечал бы за одиночный чекбокс. Если возникает задача добавить в форму знакомую всем галочку ...