Форум
[TypeError] call_user_func_array(): Argument #1 ($callback) must be a valid callback, non-static method CSeoMetaEvents::PageStart() cannot be called statically (0)/home/k/ktvsu/ktv.su/public_html/bitrix/modules/main/classes/general/module.php:480
#0: call_user_func_array(array, array)
/home/k/ktvsu/ktv.su/public_html/bitrix/modules/main/classes/general/module.php:480
#1: ExecuteModuleEventEx(array)
/home/k/ktvsu/ktv.su/public_html/bitrix/modules/main/include.php:163
#2: require_once(string)
/home/k/ktvsu/ktv.su/public_html/bitrix/modules/main/include/prolog_before.php:14
#3: require_once(string)
/home/k/ktvsu/ktv.su/public_html/bitrix/modules/main/include/prolog.php:10
#4: require_once(string)
/home/k/ktvsu/ktv.su/public_html/bitrix/header.php:1
#5: require(string)
/home/k/ktvsu/ktv.su/public_html/index.php:2
———-
Ничего в интернете не нашел. Может вы поможете.
Вот код с 478 строчки
//php bug: http://bugs.php.net/bug.php?id=47948
class_exists($arEvent[«TO_CLASS»]);
return call_user_func_array(array($arEvent[«TO_CLASS»], $arEvent[«TO_METHOD»]), $args);
>
else
return $r;
>
>
2.3.0 (11.01.2023) (beta) Улучшение совместимости с PHP 8.1
Нет.
Нашел файл с этим текстом, вроде как captcha.
После добавления название функции function название_модуля() на function __construct() выходит такая ошибка:
[TypeError]call_user_func_array(): Argument #1 ($callback) must be a valid callback, class «\Artmix\Handlers\Main\OnPageStart» not found (0)
/home/bitrix/www/bitrix/modules/main/classes/general/module.php:465
#0: ExecuteModuleEventEx
/home/bitrix/www/bitrix/modules/main/include.php:159
#1: require_once(string)
/home/bitrix/www/bitrix/modules/main/include/prolog_before.php:14
#2: require_once(string)
/home/bitrix/www/bitrix/modules/main/include/prolog.php:10
#3: require_once(string)
/home/bitrix/www/bitrix/header.php:1
#4: require(string)
/home/bitrix/www/index.php:2
———-
После изменил на второй вариант: static function МетодКласса() и ошибка пропала по данному модулю, вышла по следующему)) Разбираюсь дальше.
Нет.
Нашел файл с этим текстом, вроде как captcha.
После добавления название функции function название_модуля() на function __construct() выходит такая ошибка:
У вас же ошибка на call_user_func_array()
надо static function МетодКласса()
Теперь выходит такая ошибка:
[TypeError]
call_user_func_array(): Argument #1 ($callback) must be a valid callback, non-static method CScoderCollectionsEvents::OnBeforePrologHandler() cannot be called statically (0)
/home/bitrix/www/bitrix/modules/main/classes/general/module.php:480
#0: ExecuteModuleEventEx
/home/bitrix/www/bitrix/modules/main/include.php:456
#1: require_once(string)
/home/bitrix/www/bitrix/modules/main/include/prolog_before.php:14
#2: require_once(string)
/home/bitrix/www/bitrix/modules/main/include/prolog.php:10
#3: require_once(string)
/home/bitrix/www/bitrix/header.php:1
#4: require(string)
/home/bitrix/www/index.php:2
———-
Единственное место с упоминанием «OnBeforePrologHandler» это:
>
if ($return === true)
//если товар еще не принадлежит разделу коллекции
if (!in_array($arCollection[«SECTION_ID»],$arSections))
$arGroupsSet[] = $arCollection[«SECTION_ID»];
foreach (GetModuleEvents(«scoder.collections», «OnBeforeScoderCollectionElementEdit», true) as $arEvent)
ExecuteModuleEventEx($arEvent, array($return, $ELEMENT_ID, $arCollection[«SECTION_ID»], $arSections, &$arGroupsSet));
CIBlockElement::SetElementSection($ELEMENT_ID, $arGroupsSet);
//Переиндексация
PropertyIndex\Manager::updateElementIndex($arProduct[«IBLOCK_ID»], $ELEMENT_ID);
foreach ($arSections as $section_id)
if ($section_id != $arCollection[«SECTION_ID»])
$arSectionsNew[] = $section_id;
foreach (GetModuleEvents(«scoder.collections», «OnBeforeScoderCollectionElementEdit», true) as $arEvent)
ExecuteModuleEventEx($arEvent, array($return, $ELEMENT_ID, $arCollection[«SECTION_ID»], $arSections, &$arSectionsNew));
CIBlockElement::SetElementSection($ELEMENT_ID, $arSectionsNew);
//Переиндексация
PropertyIndex\Manager::updateElementIndex($arProduct[«IBLOCK_ID»], $ELEMENT_ID);
>
>
>
По инструкции, необходимо дописать static function, но тут нет ничего подобного.
Можете подсказать, что поправить.
Ошибка при обновлении php до 8
Не стоит обвинять разработчиков 1с-Битрикс, если у вас не работает модуль, который не относится к ним.
Если разработчик модуля брал с вас деньги, то с него и требуйте оптимизацию. Благо там немного править.
Ошибка описывается в первых строках, а не то что идет под порядковыми номерами #1. n.
Модуль дает критический сбой. Битрикс об этом сообщает, что не может вызвать то или иное и указывает где именно он не может обработать данные из-за поступающей ошибки.
Если не можете анализировать ошибки, доверьтесь профессионалам и попросите кого-нибудь поблизости.
Добрый вечер! Объясните, пожалуйста, где конкретно это искать и как именно исправить? Перешла я как указано в модуль /bitrix/modules/bitrix.xscan, который вроде как Битриксом разработан — и где дальше искать? В каком файле? В какой папке?
[TypeError] call_user_func_array(): Argument #1 ($callback) must be a valid callback, non-static method CBitrixXscan::OnBuildGlobalMenu() cannot be called statically (0) /home/o/oksite/berloga/public_html/bitrix/modules/main/classes/general/module.php:480 #0: ExecuteModuleEventEx(array, array) /home/o/oksite/berloga/public_html/bitrix/modules/main/interface/admin_lib.php:909 #1: CAdminMenu->Init(array) /home/o/oksite/berloga/public_html/bitrix/modules/main/interface/prolog_main_admin.php:35 #2: require_once(string) /home/o/oksite/berloga/public_html/bitrix/modules/main/include/prolog_admin_after.php:15 #3: require(string) /home/o/oksite/berloga/public_html/bitrix/modules/main/admin/update_system.php:31 #4: require_once(string) /home/o/oksite/berloga/public_html/bitrix/admin/update_system.php:2
Обновите решение, исправление для поддержки php8 было выпущено в июле.
https://marketplace.1c-bitrix.ru/solutions/bitrix.xscan/#tab-log-link
Или удалите его
Добрый день, уважаемые участники форума. Прошу помощи в решении проблемы после обновления. К сожалению, не могу сам разобраться какой модуль необходимо исключить
[TypeError] call_user_func_array(): Argument #1 ($callback) must be a valid callback, non-static method CStepUseSoloGroupLtd_lightbox::addScriptTag() cannot be called statically (0)
/home/m/medcolru/public_html/bitrix/modules/main/classes/gen eral/module.php:480
#0: ExecuteModuleEventEx(array)
/home/m/medcolru/public_html/bitrix/modules/main/include.php:456
#1: require_once(string)
/home/m/medcolru/public_html/bitrix/modules/main/include/pro log_before.php:14
#2: require_once(string)
/home/m/medcolru/public_html/bitrix/modules/main/include/pro log.php:10
#3: require_once(string)
/home/m/medcolru/public_html/bitrix/header.php:1
#4: require(string)
/home/m/medcolru/public_html/index.php:2
Просто заходите у себя в админке Рабочий стол → Marketplace → Установленные решения и смотрите список установленного.
/bitrix/admin/partner_modules.php?lang=ru
Благодарю. Удалил, проблема с данной ошибкой пропала и появилась новая:
[TypeError] call_user_func_array(): Argument #1 ($callback) must be a valid callback, non-static method MKSpecial::ShowPanel() cannot be called statically (0)
/home/m/medcolru/public_html/bitrix/modules/main/classes/gen eral/module.php:480
#0: ExecuteModuleEventEx(array)
/home/m/medcolru/public_html/bitrix/modules/main/include.php:456
#1: require_once(string)
/home/m/medcolru/public_html/bitrix/modules/main/include/pro log_admin_before.php:34
#2: require_once(string)
/home/m/medcolru/public_html/bitrix/modules/main/interface/d esktop.php:2
#3: require(string)
/home/m/medcolru/public_html/bitrix/admin/index.php:2
Вновь прошу помощи
Гугл по MKSpecial || MKSpecial bitrix ничего не находит
grep -r MKSpecial /home/m/medcolru/public_html/bitrix/modules/
Имя директории модуля обычно совпадает с именем в marketplace
https://marketplace.1c-bitrix.ru/solutions/имя.директории
Также модули могут быть в local/modules/
grep -r MKSpecial /home/m/medcolru/public_html/bitrix/modules/
Имя директории модуля обычно совпадает с именем в marketplace
https://marketplace.1c-bitrix.ru/solutions/имя.директории
Да, нашел. Модуль называется Мибок: Версия для слабовидящих (модуль на сайт), вдруг кому-то еще пригодится.
Написал в тп поставщика
Это мой первый сайт на Битриксе. Поэтому глубоко копать пока не могу. Как писали в посте выше: «Если не можете анализировать ошибки, доверьтесь профессионалам и попросите кого-нибудь поблизости» — ближе Вас никого нет.
Продлила лицензию, обновила модули и получила новогодний подарок!
Сторонние модули не устанавливала. Пожалуйста, подскажите что делать!
[TypeError]call_user_func_array(): Argument #1 ($callback) must be a valid callback, non-static method CEShop::ShowPanel() cannot be called statically (0)
/home/a/xxx/xxx.net/public_html/bitrix/modules/main/classes/general/module.php:480
#0: call_user_func_array(array, array)
/home/a/xxx/xxx.net/public_html/bitrix/modules/main/classes/general/module.php:480
#1: ExecuteModuleEventEx(array)
/home/a/xxx/xxx.net/public_html/bitrix/modules/main/include.php:456
#2: require_once(string)
/home/a/xxx/xxx.net/public_html/bitrix/modules/main/include/prolog_before.php:14
#3: require_once(string)
/home/a/xxx/xxx.net/public_html/bitrix/modules/main/include/prolog.php:10
#4: require_once(string)
/home/a/xxx/xxx.net/public_html/bitrix/header.php:1
#5: require(string)
/home/a/xxx/xxx.net/public_html/index.php:2