MODX 3 и (вероятно) Formit
Здравствуйте.
Уже на втором сайте в логах вижу такие ошибки после открытия любой страницы сайта:
По слову «fi» сделал предположение, что это может быть Formit. Смущает, что это происходит при открытии любой страницы, даже где форм никаких нет (например sitemap.xml на пустом шаблоне).
MODX 3.0.4
PHP 8.1
Уже на втором сайте в логах вижу такие ошибки после открытия любой страницы сайта:
.../core/components/pdotools/vendor/fenom/fenom/src/Fenom/Template.php(487) : eval()'d code : 8) PHP warning: Undefined array key "fi"
.../core/components/pdotools/vendor/fenom/fenom/src/Fenom/Template.php(487) : eval()'d code : 8) PHP warning: Trying to access array offset on value of type null
Причем, их (таких сообщений) прямо куча вываливается после каждой загрузки (68 таких строчек за раз) — весь журнал забит.По слову «fi» сделал предположение, что это может быть Formit. Смущает, что это происходит при открытии любой страницы, даже где форм никаких нет (например sitemap.xml на пустом шаблоне).
MODX 3.0.4
PHP 8.1
Комментарии: 13
Это не ошибки, это предупреждения. Ты FormIt используешь в чистом виде или с AjaxForm/FetchIt/SendIt?
Formit + AjaxForm.
Хорошо что не ошибка, а предупреждение — но, всё равно, не приятно (
Хорошо что не ошибка, а предупреждение — но, всё равно, не приятно (
А почему из двух адаптированных под Modx 3 компонентов, ты выбрал тот, который под Modx 3 никто не адаптировал и не будет?
потому что jQuery все равно уже установлен на сайте (и используется для разных целей, не только для AjaxForms) + не хотелось заморачиваться с новинками…
Я, на самом деле, смотрел оба этих компонента: SendIt у меня почему-то не заработал (может плохо разбирался), FetchIt заработал — но нужно было заморачиваться с настройками стилей, уведомлений, антиспама и т.п. (я для Formit + AjaxForm уже все заготовки были с прежних времен).
Я, на самом деле, смотрел оба этих компонента: SendIt у меня почему-то не заработал (может плохо разбирался), FetchIt заработал — но нужно было заморачиваться с настройками стилей, уведомлений, антиспама и т.п. (я для Formit + AjaxForm уже все заготовки были с прежних времен).
Так причем тут jQuery?
AjaxForm(не только js имеется ввиду, а его php) на сколько я знаю вообще не адаптирован под MODX 3, FetchIt прямая и простая замена.
AjaxForm(не только js имеется ввиду, а его php) на сколько я знаю вообще не адаптирован под MODX 3, FetchIt прямая и простая замена.
Я не думал, что AjaxForm не адаптирован под MODX3 (зачем же он тогда в репозитарии установщика отображается?).
Мне сейчас кажется, что дело, всё-таки, в настройках хостинга: каких-то директив не хватает…
Сегодня для примера на другом хостинге (на своем Beget) создал новый сайт MODX 3, установил Formit, AjaxForm и все другие компоненты с сайта-примера, скопировал чанки с формами, шаблон — пока всё работает «как часы» (сообщений в консоле нет).
К сожалению, не получается пока просто скопировать сайт — Vapor выдаёт ошибку, UpgradeModx не хочет устанавливаться, прямого доступа к хостингу, на данный момент, нет.
Можно просто попытаться переустановить MODX, но, опять же, без резервной копии страшно (вдруг всё тупо сломается, раз сейчас всё так странно там), неделя работы какой-никакой… ((
Мне сейчас кажется, что дело, всё-таки, в настройках хостинга: каких-то директив не хватает…
Сегодня для примера на другом хостинге (на своем Beget) создал новый сайт MODX 3, установил Formit, AjaxForm и все другие компоненты с сайта-примера, скопировал чанки с формами, шаблон — пока всё работает «как часы» (сообщений в консоле нет).
К сожалению, не получается пока просто скопировать сайт — Vapor выдаёт ошибку, UpgradeModx не хочет устанавливаться, прямого доступа к хостингу, на данный момент, нет.
Можно просто попытаться переустановить MODX, но, опять же, без резервной копии страшно (вдруг всё тупо сломается, раз сейчас всё так странно там), неделя работы какой-никакой… ((
AjaxForm это просто JS оболочка для FormIT или любых других сниппетов. Компонент сам по себе ничего не делает, никаких серверных задач не выполняет. Там просто нечего адаптировать.
Разве что, сам установщик
Разве что, сам установщик
Продолжаю думать, что всё дело в настройках PHP и расширений на хостинге. Хостинг webhost1.ru
Никто не сталкивался с таким?
Никто не сталкивался с таким?
Я посмотрел в настройках MODX — есть некоторые различия (первый вариант где всё работает на Beget — второй где сообшения вылазят):
Версия PHP: 8.1.25 — 8.1.19
Версия базы данных: 5.7.21-20-beget-5.7.21-20-1-log — 8.0.26
Кодировка базы данных: utf8 — utf8mb4
PDO drivers: odbc, sqlite, mysql, firebird, pgsql — sqlite, mysql
в остальном, вроде, всё похоже
Версия PHP: 8.1.25 — 8.1.19
Версия базы данных: 5.7.21-20-beget-5.7.21-20-1-log — 8.0.26
Кодировка базы данных: utf8 — utf8mb4
PDO drivers: odbc, sqlite, mysql, firebird, pgsql — sqlite, mysql
в остальном, вроде, всё похоже
Игорь, а вы какую задачу решаете?
делаю свои первые сайты на MODX 3, хочу что бы всё было правильно и в логах не было кучи сообщений (предупреждений/ошибок). Если дело в сервере, то нужно понять чего именно там не хватает в настройках… если дело в «моих кривых руках», то тогда я не знаю (с MODX 2 уже давно работаю)… ))
Ну подобные вещи только на уровне исходного кода компонентов можно решить (предположу что это не ваш уровень). Потому проще либо забить, либо отключить вывод предупреждений, оставив только вывод ошибок. Это можно сделать например в htaccess файле
Гуглится легко. Напримервот тут можно почитать
Гуглится легко. Напримервот тут можно почитать
Спасибо, про отключение уведомлений понял.
Всё-таки, лучше дождусь доступа на хостинг, скопирую сайт и буду уже у себя смотреть и экспериментировать (пока что на 80% уверен что дело именно в настройках PHP на хостинге).
Вы правильно заметили, уровень MODX 3 у меня пока не особо — но я привык всё делать качественно, буду продолжать разбираться. )
Всё-таки, лучше дождусь доступа на хостинг, скопирую сайт и буду уже у себя смотреть и экспериментировать (пока что на 80% уверен что дело именно в настройках PHP на хостинге).
Вы правильно заметили, уровень MODX 3 у меня пока не особо — но я привык всё делать качественно, буду продолжать разбираться. )
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.