Пытаюсь сделать систему лайков на cms битрикс,
принцип такой:
1) При заходе на страницу, посетителю выводятся блоки с информацией за которую можно проголосовать.
2) При клике на лайк, значение становиться +1
3) При повторном клике, значение -1
4) Каждый раз как только был совершен клик, делается AJAX запрос, который изменяет значение свойства элемента инфоблока и увеличивает или уменьшает счетчик лайков.
Завел инфоблок с значение свойств:
1) Лайки - тип число
2) Ссылка на фотографию - тип строка
3) Имя пользователя - тип строка
4) ID того, кто лайкнул - тип список
Единственное что осталось, так это добавлять id пользователя в список когда он ставит лайк,
что бы отследить посетителя и не дать возможность сделать повторный лайк при перезагрузке страницы (или ip если пользователь не зарегистрирован).
Вопрос именно в этом, как добавить в значение свойства типа "множественную строку" информацию и как удалить, заранее спасибо.
Так это выглядит: https://www.zelenyjostrov.ru/contest-pictures.php
Воспользуйтесь методом SetPropertyValuesEx() как им пользоваться есть примеры в документации.
Вот общий пример как работать с этим методом для множественной строки:
$PROPERTY_VALUE = array(
0 => array("VALUE"=>"значение","DESCRIPTION"=>"описание значения"),
1 => array("VALUE"=>"значение2","DESCRIPTION"=>"описание значения2")
);
CIBlockElement::SetPropertyValuesEx($ELEMENT_ID, $IBLOCK_ID, array($PROPERTY_CODE => $PROPERTY_VALUE));
Можно также во множественной строке хранить не ID пользователей, а ip - тогда лайки могут ставить и неавторизованные пользователи, свойство типа список для этого не при
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники