@alexsteadfast
I am noob

Почему не срабатывает обработчик при перехвате события?

Есть обработчик события при создании инфоблока в init.php
<?php
// регистрация обработчика в /bitrix/php_interface/init.php
AddEventHandler(12, "OnAfterIBlockElementAdd", "admissionToReferal");
$result = admissionToReferal($arFields);
if($result){echo 'Функция сработала';}
else echo 'Функция не сработала';

function admissionToReferal($arFieldsParam)
{
     if($arFieldsParam["ID"]>0){
	 //событие при добавлении блока Платёж
	 $payId = $arFieldsParam["ID"];
	 
	 
	 $arSelect = Array("ID", "SEND");
         $arFilter = Array("IBLOCK_ID"=>12, "ID"=>$payId);
	 $res = CIBlockElement::GetList(Array(), $arFilter, false, Array("nPageSize"=>50), $arSelect);
	 
	  while($ob = $res->GetNextElement()){ 
         $arFields = $ob->GetFields(); 
	 $arProps = $ob->GetProperties(); 
          print_r($arFields);
	  print_r($arProps);
          }     
        }
}
?>

после создания инфоблока по идее функция должна отрабатывать, но мне возвращается строка "Функция не отработала". Где я ошибся?
  • Вопрос задан
  • 391 просмотр
Пригласить эксперта
Ответы на вопрос 1
@kacheleff
fullstack developer
у Вас функция admissionToReferal не возвращает никакого результата (т.е. возвращает NULL), из-за этого выводится строка "Функция не отработала".
Однако, это не означает, что функция не выполнилась.
Вызовите die() в теле функции и увидите, отработала ли она
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы