Цитата |
---|
написал: while(@ob_end_flush()); |
Я просто в ступоре в подозрении, что я php не знаю, как это может быть, что берем инстанс внутри
Fuser::getSession и берем такой же инстанс снаружи и они разные.
18.03.2024 10:36:44
ну вот тот, который принимает запрос
компонент я уже подкостылил, но в нем практически сразу же при вызове дебажил примерно вот так
ну и в этом же месте потом в print_r выводил Application::getInstance()->getSession() - получал сессию, а если вместо нее Fuser::getSession, то null |
|||||||
|
16.03.2024 12:53:22
На сайте есть вызываемый по аякс скрипт, который добавляет товар в корзину. Перестал работать. Диагностирую, что из-за CSaleBasket::GetBasketUserID - ставлю вызов несколько раз подряд, отдает каждый раз новое значение. При вызове CSaleBasket::GetBasketUserID(true) отдает 0. Проверяю не в аяксе - работает нормально. Браузер показывает, что POST запрос уходит с куками BX_USER_ID и PHPSESSID стабильно с одинаковыми для каждого вызова аякс.
Вызываю в этом аяксовском скрипте \Bitrix\Main\Application::getInstance()->getSession() смотрю SALE_USER_ID - тот, что надо, т.е. тот, который для этого юзера Fuserid в статике. Копаю (дебажу) дальше - вызываю в скрипте Fuser::getSession (временно делаю его public) - в статике отдает объект, в аякс =null Еще дальше - вместо Fuser::getSession вызываю Application::getInstance()->getSession() - все прекрасно, сессия отдается и в статике, и при аякс запросе. Как такое может быть, что Application::getInstance()->getSession() при вызове внутри Fuser::getSession ( Ну, т.е. как подкостылить скрипт понятно - надо не обращаться сразу к CSaleBasket::GetBasketUserID, а пытаться брать сначала SALE_USER_ID прямо из сессии, но непонимание почему вышеописанное имеет место меня сильно беспокоит - почему так? |
|
|
12.03.2024 16:24:29
ну раз уж нажал, то вот вариант - перед этим циклом снять со старого $this->request данные, необходимые для создания нового экземпляра, изменить их как надо, создать новый экземпляр класса конструктором ( Ну и, понятно, дальше строку в цикле с set убрать. |
|||
|
11.03.2024 19:58:14
|
|||
|
23.02.2024 17:03:02
Рад бы помочь, сам разбираюсь сейчас с приложениями для облачной Б24, только не понимаю из вашего описания что вы делаете, какая задача стоит, кто что кому передает.
Предполагаю, что у вас есть сайт, возможно, на БУС, возможно, на каком-то еще php движке, на нем посетитель заполняет форму и задача в том, чтобы написать скрипт, который передает данные из этой формы в Битрикс24 по REST API. А портал принимает эти данные как входящий веб-хук и создает новую сущность, предполагаю, что лид. Причем, на стороне сайта вы не используете SDK CRest. Много предположений, но в любом случае я бы 1) массив запроса до обработки его функцией http_build_query логировал бы, чтобы посмотреть, что вы передаете. Действительно ли в пользовательские поля идут строки, а не массивы. Ну, просто у вас переменные с префиксами ar, которые вообще-то говорят, что это массивы. 2) на стороне портала проверил бы действительно ли поля типа UF_CRM_ - это поля лида, а не сделки, например. 3) принимал ответ портала, логировал бы его и смотрел бы там текст ошибки Извините, если это банальщина, которую вы уже проверили, но вы же не написали, что вы сделали для диагностики проблемы, что нет, поэтому лучше начать с самых простых шагов. PS начал бы с пункта 3 |
|
|
13.02.2024 11:45:19
Видимо, никак. Логично было бы пробрасывать команду на редактирование методом BX24.placement.call, но соответствующего аргумента не нашел, видимо, не реализовано.
Поэтому, если нужно переключение интерфейса поля между режимами просмотра и редактирования, нужно реализовывать его на стороне приложения. Сохранять через апдейт сущности методами rest со стороны приложения. Так и сделал, в принципе нормально работает. |
|
|
11.02.2024 20:20:57
Зарегистрировал свой тип поля, написал внешний обработчик, все нормально отображается в карточке в режиме MODE:"view". Хорошо бы теперь поле переключить в режим редактирования, который у обычного поля включается по клику. Но iframe, конечно же, не передает событие клика в родительский элемент и ничего по клику не происходит.
Как переключить поле в режим редактирования? Должен же быть какой-то способ, иначе зачем этот метод встраивания вообще делали. |
|
|
09.02.2024 10:03:18
функция each удалена из php 8, переписывайте этот кусочек используя, например, foreach Ну и так далее со всем ошибками, которые возникнут, последовательно их устраняя, добьетесь того, чтобы все заработало. |
|||
|
09.02.2024 09:33:51
Теперь, конечно, задача, поставленная топикстартером решается просто и цивилизованно. |
|||
|
08.02.2024 19:56:57
ну так у вас написано, куда копать -
/local/php_interface/include/Digital/OnlyDigitalGoods.php:111 там класс OnlyDigitalGoods , его метод extractParams должен принимать аргументом тип Bitrix\Sale\Internals\Entity , а не Bitrix\Sale\Internals\CollectableEntity как у вас. Попробуйте для начала поменять и посмотрите, что получится. |
|
|
07.02.2024 20:36:40
признаюсь, что пару раз писал пути решения этой задачи, но стирал их вместо того, чтобы опубликовать. Извините, что повторяюсь, хотя вы и дали понять, что мое мнение вас не интересует, но решение ее с большой вероятностью пойдет заказчику во вред - хороший кусок рекламного бюджета сольется в унитаз при таком искажении каналов конверсий. Поэтому и не хочется здесь никакие идеи излагать.
|
|
|
02.02.2024 21:18:14
|
|||
|
29.01.2024 14:03:02
Обращаться к производителям этого модуля. В смысле sotbit.seometa ("Сотбит: SEO умного фильтра – мета-теги, заголовки, карта сайта") - его же его обработчик порождает такую проблему.
Ну или лезть в /bitrix/modules/sotbit.seometa/classes/general/seometa_event_handler.php:484 смотреть почему обработчик CSeoMetaEvents::OnAfterIndexAddHandler апдейтит не проверяя уникальность ключевого поля. |
|
|
22.01.2024 11:44:49
Решено, трюк с vz-repo сработал, а ошибка была из-за другого, вот эта тема помогла
|
|
|
19.01.2024 09:33:17
Помогите, пожалуйста, с решением проблемы. Она, наверное, не у меня одного должна проявиться. С Линуксом знаком поверхностно, поэтому прошу помощи.
Есть VMBitrix 7.5.5 на VPS с виртуализацией Virtuozzo. При попытке апгрейда php с 7.4 до 8.1 получаю ошибку
Перед тем как собирать вещички и переезжать на KVM, пробую такой трюк - иду под VPN c браузера на
|
|||||
|
18.01.2024 14:18:40
|
|||
|
18.01.2024 12:36:19
|
|||
|
18.01.2024 12:15:49
|
|||
|