Есть свойство Ом, там установлена галочка участвует в поиске. Если искать 10 Ом, то находит по свойству. Если искать Резистор, то находит по названию. Если искать Резистор 10 Ом то ничего не находит. Морфология включена. Движок поисковика битрикс. Пробовал поиск MySQL но он все подряд выдаёт.
Я знаю, я его давно использую. НО! В том то и дело что там написано, что надо проделать очистку куки в браузере. Клиенты это делать не хотят! Вот по этому и возмущение! Пусть доработают, пусть куки по другому сбрасываются, автоматически!
Это издевательство какое-то! Почему такие проблемы с куки и авторизацией? Я уговариваю клиента перейти на битрикс с старого движка на битрикс, он соглашается, но у него закрытый интернет-магазин для оптовиков. Я делаю сайт на поддомене new.site.ru, всё хорошо, но при переходе на новый сайт клиенты не могут авторизоваться! Потому что у них есть куки от сайта site.ru! Я добавил в dbconn.php строку setcookie("PHPSESSID", "", 777, '/'); Но это не помогает для первого захода.
Я написал ajax функцию которая удаляет куки при посещении страницу авторизации.
Код
<?php
// Удаляем все куки
if (isset($_SERVER['HTTP_COOKIE'])) {
$cookies = explode(';', $_SERVER['HTTP_COOKIE']);
foreach($cookies as $cookie) {
$parts = explode('=', $cookie);
$name = trim($parts[0]);
// echo $name;
// Удаляем куки для основного пути и домена
unset($_COOKIE[$name]);
// setcookie($name, '', -1, '/');
setcookie($name, '', -1, '/', 'new.dealer.site.ru');
setcookie($name, '', -1, '/', 'dealer.site.ru');
setcookie($name, '', -1, '/', '.site.ru');
// setcookie($name, '', -1, '/', 'site.ru');
}
unset($_SERVER['HTTP_COOKIE']);
}
// Уничтожаем сессию, если она есть
if (session_status() === PHP_SESSION_ACTIVE) {
session_unset();
session_destroy();
setcookie(session_name(), '', -1, '/');
}
// Отправляем ответ
echo 'Куки сайта и сессия сброшены!';
?>
Помогает, но для 50% пользователей. Как решить эту проблему?
написал: Всё, я нашел функцию которая обновляет остатки у ТП
Код
use Bitrix\Catalog\Model\Product;
use Bitrix\Main\Loader;
Loader::includeModule('catalog');
$skuId = 122253; // ID торгового предложения (SKU)
$newQuantity = 50;
$result = Product::update($skuId, [
'QUANTITY' => $newQuantity
]);
if ($result->isSuccess()) {
echo "Остатки SKU обновлены";
} else {
print_r($result->getErrorMessages());
}
Нет, вопрос остаётся открытым. Я удалил все товары и ТП и залил заново. Сейчас пробовал этой функцией обновить доступное количество, все равно не получается.
написал: The CCatalogProduct::Update function does not work directly for trade offers (TIs), because they are essentially individual products. To update the balance of a trade offer, you need to use the same function, but pass it the ID of the specific trade offer, not the ID of the parent product. Make sure you get the correct TI ID, for example, using D7 or through methods that return the ID of the offer for a given product.
Мне нейросеть тоже так отвечает, но какой функцией изменять доступное кол-во я так и не нашел
Не удалось выполнить отгрузку, так как для товара не указан маркировочный код. Зайдите в форму редактирования отгрузки, промаркируйте товар и повторите попытку.
написал: Смотрите логи php и ищите кастомные обработчики событий на обновление элемента инфоблока.
Подскажите ещё одну вещь, есть ли какие-нибудь функции для обновления названия элемента, без создания нового объекта? У нас кастомный импортер и при использовании стандартного функционала:
Перестало работать обновление элементов. Вот простой пример: <?php require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php"); use Bitrix\Main\Application; $id = 257900; $name = 'Adam Hall K 4 CAT 50050 I SALE профессиональный дата кабель RJ45 разъемы" Adam Hall Industriale,0.5';
// Проверяем существование элемента $res = CIBlockElement::GetByID($id); if (!$res->Fetch()) { die("Элемент с ID {$id} не найден!"); }
// Очищаем название от проблемных символов $name = str_replace(['"', '"', "'"], '', $name); if (strlen($name) > 255) { $name = substr($name, 0, 255); }
[USER=4864667]Проблема была актуальна 3 года назад. Навряд ли автора это еще интересует. Может он вообще мобилизовался и спит вечным сном в украинских степях. Много воды утекло, многое поменялось. Многое из того, что было важным и актуальным уже совсем не кажется таковым...
Как будто это проблема только у него возникла.
Не отображаются торговые предложения типа справочник
Добавил торговое предложения типа справочник для цвета, оно не отображается, хотя другие типа список отображаются нормально, не могу понять в чем причина. Может кто сталкивался?
Андрей Быкадоров написал: Зачем вы окошко браузера показываете, если скрипт кроном запускаете? Он может требовать авторизации при запуске из браузера, но прекрасно запускаться из крона. Если не запускается кроном, то смотрите в логах ошибки этого скрипта при запуске кроном, ну или можно сам скрипт посмотреть, убрать там проверку пользователя, если она там вообще есть.
Когда я через терминал запускал, возвращал html код страницы авторизации, я скрин браузера сделал что бы показать что это не обычная битрикс авторизация, а авторизация б24.
Олег Сутулин написал: А почему без авторизации не получается получить данные? Какой у вас метод требует авторизации?
С самого начала, как подключаешь файл пролога битрикса, так и требует авторизации. require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
Есть корпоративный сайт на б24. Из него надо вытащить данные через скрипт и передать на другой сервер. Скрипт написан и работает. Но проблема в том что он запускается если пользователь авторизован, а его надо поставить на крон. По этому вопрос, как в б24 авторизоваться по API?
Код
global $USER;
$USER->Authorize(1);
Не работает.
Не работает редактирование элементов в режиме правки
В режиме редактирование, при наведении на элемент не появляется плашка редактировать эл-нт, появляется только редактировать компонент
Но если под админом зайти в редактор компонента и сохранить
То всё нормально начинает работать
Но через время опять сбивается. И это работает, только когда администратор сохраняет, когда контент менеджер сохраняет, то ничего не меняется. Подскажите, как это поправить?
Стоит задача закачать отзывы из csv файла, комментарии работают на основе блога, в комментариях устанавливается рейтинг
что бы добавлять сюда комментарии я нашел вот такой код: $UserIP = CBlogUser::GetUserIP(); $arFields = array( "TITLE" => 'Мое первое сообщение в блоге', "POST_TEXT" => 'Текст моего первого сообщения в блоге', "BLOG_ID" => 1, "POST_ID" => 31, "PARENT_ID" => '', //комментарий привязан к сообщению //"AUTHOR_ID" => $USER->GetID(), //добавляем неанонимный комментарий, //в противном случае необходимо задать AUTHOR_NAME, AUTHOR_EMAIL 'AUTHOR_NAME' => 'Сергей Помолов', 'AUTHOR_EMAIL' => '', "DATE_CREATE" => ConvertTimeStamp(false, "FULL"), "AUTHOR_IP" => $UserIP[0], "AUTHOR_IP1" => '' );