Компонент AjaxForm
Доброго времени суток!
Хотел спросить поддерживается ли у вас в данный момент компонент AjaxForm modstore.pro/packages/utilities/ajaxform
Версия моего текущей modx revo 2.4.2.
Делаю в чанке вызов формы (стандартный):
Спасибо заранее за ответы. С уважением, Андрей.
Хотел спросить поддерживается ли у вас в данный момент компонент AjaxForm modstore.pro/packages/utilities/ajaxform
Версия моего текущей modx revo 2.4.2.
Делаю в чанке вызов формы (стандартный):
[[!AjaxForm?
&snippet=`FormIt`
&form=`tpl.AjaxForm.example`
&hooks=`email`
&emailSubject=`Тестовое сообщение`
&emailTo=`info@domain.com`
&validate=`name:required,email:required,message:required`
&validationErrorMessage=`В форме содержатся ошибки!`
&successMessage=`Сообщение успешно отправлено`
]]
[[!AjaxSubmit?
&snippet=`MySnippet`
&form=`tpl.AjaxForm.example`
]]
И вся эта талмуда не работает. P.S. Чанки использовал дефолтные. Е-майл естественно менял на свой. Форму валидации не менял в принципе.Спасибо заранее за ответы. С уважением, Андрей.
Комментарии: 46
А зачем второй вызов ajaxform?
Formit установлен?
Formit установлен?
для надежности, потому первая форма вообще никак не реагирует. Компонент живой хоть?
На сколько я знаю — да, он поддерживается.
так чего стандартная форма даже не работает? Тупо с документации ставишь синтаксис тот же, и то не работает. Как это понимать?
Formit установлен? Без него отсылать ничего не будет
установлен естественно.
ссылку могу дать свою даже: norway.tmweb.ru/index.php?id=1
форма там не кастомизированная, просто выводит и нихрена не работает. Поля блокируются, а толку ноль!
она еще как будто не очищается. Начинает отключаться и все висит, висит там. Аякс запрос что там может делать с такой элементарной операцией, как отправка письма?
Вместо возмущений посмотри логи: серверные, MODX, результаты запросов в консоли браузера.
лог таков там:
[2015-12-29 14:41:28] (ERROR @ /index.php) An error occurred while trying to send the email:
[2015-12-29 14:41:30] (ERROR @ /index.php) An error occurred while trying to send the email:
[2015-12-29 14:43:16] (ERROR @ /index.php) An error occurred while trying to send the email:
[2015-12-29 14:43:22] (ERROR @ /index.php) An error occurred while trying to send the email:
[2015-12-29 14:43:56] (ERROR @ /index.php) An error occurred while trying to send the email:
[2015-12-29 14:44:02] (ERROR @ /index.php) An error occurred while trying to send the email:
И это странно… Учитывая, что там происходит на самом деле.
[2015-12-29 14:41:28] (ERROR @ /index.php) An error occurred while trying to send the email:
[2015-12-29 14:41:30] (ERROR @ /index.php) An error occurred while trying to send the email:
[2015-12-29 14:43:16] (ERROR @ /index.php) An error occurred while trying to send the email:
[2015-12-29 14:43:22] (ERROR @ /index.php) An error occurred while trying to send the email:
[2015-12-29 14:43:56] (ERROR @ /index.php) An error occurred while trying to send the email:
[2015-12-29 14:44:02] (ERROR @ /index.php) An error occurred while trying to send the email:
И это странно… Учитывая, что там происходит на самом деле.
Вот и разбирайся со своим хостингом, почему не проходит отправка письма. А в консоли браузера наверняка увидишь 500, ибо в противном случае AjaxForm разблокирует поля, когда получает 200 ответ.
значит нужно обращаться в службу поддержки хостинга, к админу, что он там мне палки в колеса вставляет)). Спасибо за поддержку. Буду писать хостерам тогда.
Еще можно поставить QuickEmail и посмотреть, в чем ошибки.
Вываливают ошибку по компоненту в консоль:
Failed to load resource: the server responded with a status of 500 (Internal Server Error)
либо второй вариант:
500 (Internal Server Error)
У меня вопрос, Так где же сокрыта ошибка у хостер ли или в скриптах компонента?
Failed to load resource: the server responded with a status of 500 (Internal Server Error)
либо второй вариант:
500 (Internal Server Error)
У меня вопрос, Так где же сокрыта ошибка у хостер ли или в скриптах компонента?
Если 500, то хостер тут не причем. Попробуйте вызвать так
[[!QuickEmail? &debug=`1`]]
я говорю про компонент Ajax, мне в переписке выше писали про хостера вчера. Сейчас тогда пробовать буду QuickEmail.
Могу глянуть внутрь. Если есть возможность, кидайте доступ к личку.
Напишите свой почтовый ящик, я вам скину доступ к личке. Вы сами ознакомитесь с ЧПУ данного сайта и тем как все там работает.
Сообщение проходит, хотя и на дефолтный почтовый ящик. У меня вопрос тогда, где там чанк прикручивать с самой формой отправки данных? Сначала использовал стандартную FormIt, потом я решил использовать Ajax компонент, но он не работает. А QuickEmail — имеет формы для забивания данных? Есть пример такой? Искал в сети — не нашел.
Ребята, ну что я написал хостеру, а он валит на ошибку в скриптах вашего компонента, хотя он рабочий. Так где же правда тут?
Теоретически это может быть проблема с правами. Попробуй поставить 755, если стоит иное. Читал комменты ниже, если попеременно выдает то 500, то 200, самый очевидный вывод, что блокирует неавторизованного пользователя (на хостинге!), а разрешает после каких-то манипуляций в кабинете хостера, пока сессия актуальна, сервер разрешает исполнение файла извне. Как только прошло, к примеру, 20 минут — получаем неавторизованного на хостинге человека и соответственно блок исполнения php-скрипта. С другой стороны — скрипт пытается отправить сообщение, то есть вроде как исполняется, так что кто его знает.
смотрю логи, там такие строки:
[Wed Dec 30 08:44:25 2015] [error] [client 5.128.35.72] PHP Fatal error: Cannot use object of type AjaxForm as array in /home/n/norway/modx/public_html/core/components/ajaxform/model/ajaxform/ajaxform.class.php on line 94, referer: norway.tmweb.ru/index.php?id=1
[Wed Dec 30 08:54:13 2015] [error] [client 5.128.35.72] PHP Fatal error: Cannot use object of type AjaxForm as array in /home/n/norway/modx/public_html/core/components/ajaxform/model/ajaxform/ajaxform.class.php on line 94, referer: norway.tmweb.ru/index.php?id=1
[Wed Dec 30 09:01:06 2015] [error] [client 92.53.115.234] PHP Fatal error: Cannot use object of type AjaxForm as array in /home/n/norway/modx/public_html/core/components/ajaxform/model/ajaxform/ajaxform.class.php on line 94, referer: norway.tmweb.ru/index.php
[Wed Dec 30 09:05:48 2015] [error] [client 92.53.115.234] PHP Fatal error: Cannot use object of type AjaxForm as array in /home/n/norway/modx/public_html/core/components/ajaxform/model/ajaxform/ajaxform.class.php on line 94, referer: norway.tmweb.ru/index.php?
[Wed Dec 30 09:06:32 2015] [error] [client 92.53.115.234] PHP Fatal error: Cannot use object of type AjaxForm as array in /home/n/norway/modx/public_html/core/components/ajaxform/model/ajaxform/ajaxform.class.php on line 94, referer: norway.tmweb.ru/index.php?
[Wed Dec 30 09:51:30 2015] [error] [client 5.128.35.72] PHP Fatal error: Cannot use object of type AjaxForm as array in /home/n/norway/modx/public_html/core/components/ajaxform/model/ajaxform/ajaxform.class.php on line 94, referer: norway.tmweb.ru/index.php?id=1
[Wed Dec 30 09:54:28 2015] [error] [client 5.128.35.72] PHP Fatal error: Cannot use object of type AjaxForm as array in /home/n/norway/modx/public_html/core/components/ajaxform/model/ajaxform/ajaxform.class.php on line 94, referer: norway.tmweb.ru/index.php?id=1
Проблема с компонентом все же. Что там может неверно работать в компоненте?
[Wed Dec 30 08:44:25 2015] [error] [client 5.128.35.72] PHP Fatal error: Cannot use object of type AjaxForm as array in /home/n/norway/modx/public_html/core/components/ajaxform/model/ajaxform/ajaxform.class.php on line 94, referer: norway.tmweb.ru/index.php?id=1
[Wed Dec 30 08:54:13 2015] [error] [client 5.128.35.72] PHP Fatal error: Cannot use object of type AjaxForm as array in /home/n/norway/modx/public_html/core/components/ajaxform/model/ajaxform/ajaxform.class.php on line 94, referer: norway.tmweb.ru/index.php?id=1
[Wed Dec 30 09:01:06 2015] [error] [client 92.53.115.234] PHP Fatal error: Cannot use object of type AjaxForm as array in /home/n/norway/modx/public_html/core/components/ajaxform/model/ajaxform/ajaxform.class.php on line 94, referer: norway.tmweb.ru/index.php
[Wed Dec 30 09:05:48 2015] [error] [client 92.53.115.234] PHP Fatal error: Cannot use object of type AjaxForm as array in /home/n/norway/modx/public_html/core/components/ajaxform/model/ajaxform/ajaxform.class.php on line 94, referer: norway.tmweb.ru/index.php?
[Wed Dec 30 09:06:32 2015] [error] [client 92.53.115.234] PHP Fatal error: Cannot use object of type AjaxForm as array in /home/n/norway/modx/public_html/core/components/ajaxform/model/ajaxform/ajaxform.class.php on line 94, referer: norway.tmweb.ru/index.php?
[Wed Dec 30 09:51:30 2015] [error] [client 5.128.35.72] PHP Fatal error: Cannot use object of type AjaxForm as array in /home/n/norway/modx/public_html/core/components/ajaxform/model/ajaxform/ajaxform.class.php on line 94, referer: norway.tmweb.ru/index.php?id=1
[Wed Dec 30 09:54:28 2015] [error] [client 5.128.35.72] PHP Fatal error: Cannot use object of type AjaxForm as array in /home/n/norway/modx/public_html/core/components/ajaxform/model/ajaxform/ajaxform.class.php on line 94, referer: norway.tmweb.ru/index.php?id=1
Проблема с компонентом все же. Что там может неверно работать в компоненте?
ага))) теперь видно, что проблема в строке 94 ;) Сейчас гляну, что там такое… Нарыл вот это:
93 public function process($action, array $fields = array()) {
94 if (!isset($_SESSION['AjaxForm'][$action])) {
95 return $this->error('af_err_action_nf');
96 }
Гугл подсказал, чтоisset() работает только с переменными, поэтому передача в качестве параметров любых других значений приведет к ошибке парсинга. Для проверки определения констант используйте функцию defined().Дальше ждем комментов спецов по php. Если в массиве параметры передается записываются не как переменные, то… ммм… я не знаю) Удаление-повторная установка проблемы не решает? И может версия php слишком новая (на счет старой вряд ли, там поддержка от 5.3 идет, насколько помню). Был у меня случай, когда сайт сломался, а в чем дело непонятно. После общения с поддержкой удалось выяснить, что скрипт использует элементы, которые удалены в php 5.5, пришлось переводить на 5.4 — все заработало. Возможно та же канитель.
странно просто это, берешь компонент с официального сайта, а там такие грязные баги. Это что такое)? Версия php 5.3, так что проблем с этим у меня нет. Зачем тогда вообще выкладывать компонент на дистрибутив, если он не работает?)
Офтоп:
На Timeweb-е register_globals включен по умолчанию если не ошибаюсь, работал на нём пару месяцев назад, выключал его в htaccess.
По теме:
AjaxForm рабочий 100%, на нескольких сайтах обновил до последней версии, всё нормально работает.
Просто хостинг нужен нормальный, а неговно timeweb.
На Timeweb-е register_globals включен по умолчанию если не ошибаюсь, работал на нём пару месяцев назад, выключал его в htaccess.
По теме:
AjaxForm рабочий 100%, на нескольких сайтах обновил до последней версии, всё нормально работает.
Просто хостинг нужен нормальный, а не
Как только начальнику объяснить, что выбрать другой хостинг надо? Это большая проблема. Проще разобраться в том, что же так там не работает. Если компонент рабочий, то извиняюсь сразу.
Это один из самых рабочих компонентов.
А уметь объяснить начальнику- это и есть ПРОФЕССИОНАЛИЗМ!
А уметь объяснить начальнику- это и есть ПРОФЕССИОНАЛИЗМ!
В htaccess добавьте директиву:
php_flag register_globals off
99% что после этого все заработает.
Разработчик, что прикалывается таким образом, что дает компонент, который нихрена не работает и выдает за рабочую лошадку? Это смешно просто.
Давно устанавливали AjaxForm? Какая версия стоит сейчас?
Попробуйте деинсталлировать его, а потом установить заново.
Попробуйте деинсталлировать его, а потом установить заново.
Вчера поставил. Видимо, придется снести к черту опять и поставить заново. Жаль только времени потраченного впустую на решение чужих багов и их выявление. По коду видно, что там какая-то белиберда пишется на 93 строке.: функция с двумя параметрами, потом идет проверка на существование параметра в сессии. Второй параметр подпрограммы непонятно зачем там нужен… Короче, не знаю даже, что и думать тут.
Да там в каждой строчке белиберда. Сам не знаю, почему у меня с первого раза всё завелось. Видимо где-то ошибка в ошибке. :)
Сергей, читаю твои комментарии, и настроение повышается :)
Так завтра Новый год! Чудеса разные! Например, взял и не напился. Чудо? Чудо. Тёща на Новый год уезжает к сестре. Чудо? Самое что ни на есть настоящее. :)
И всем желаю хороших чудес в Новом году!
И всем желаю хороших чудес в Новом году!
Главное пожелание на грядущий год: провести его именно с таким неиссякаемым зарядом позитива и оптимизма! Тогда все горы будут по плечу! ;)
Да. Спасибо, Сергей! Уже второй день мне настрой подымаешь! :)
При использовании AjaxForm сообщения о точной ошибке заполнения не выводятся. Вот тут можно почитать, как сделать нечто подобное
Как это у тебя получается? У меня во всех браузерах работает всё исправно.
Без понятия. Сейчас работает
Видел. Читал. Много думал. :)
в любом случае оно возвращает либо 500 ошибку, либо 200 в случае успеха. Мне нюансы и не так уже важны. Поля доступа все заполнены, а толку нету все равно. Маска емайла соблюдена, остальные поля текстовые и не имеют какой-то особого формата заполнения.
Добрый день, братцы!
Подскажите в чем может быть проблема:
При отправке формы ошибка на ios 9.3.1 > «Не могу найти указанный ключ формы action»
На других версиях работает. На компьютере тоже ок.
8|
Подскажите в чем может быть проблема:
При отправке формы ошибка на ios 9.3.1 > «Не могу найти указанный ключ формы action»
На других версиях работает. На компьютере тоже ок.
8|
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.