Счётчик нажатий в Bitrix с помощью PHP и AJAX

Внимание! Работает режим премодерации. Все сообщения публикуются после проверки!
Страницы: 1
Ответить
RSS
Счётчик нажатий в Bitrix с помощью PHP и AJAX
Счётчик нажатий в Bitrix с помощью PHP и AJAX

В этой статье представлен пример реализации счётчика нажатий в CMS 1С-Битрикс         с использованием AJAX-запроса и свойства инфоблока.          При загрузке страницы показывается текущее значение в свойстве          CLICK_COUNT, а при нажатии на кнопку оно увеличивается на 1.
Этот код при каждом открытии страницы автоматически увеличивает на 1 значение свойства CLICK_COUNT указанного элемента инфоблока и выводит текущее значение — без AJAX и кнопок, "молча" при загрузке.
Код
<?php
define("NO_KEEP_STATISTIC", true);
define("NOT_CHECK_PERMISSIONS", true);
require_once($_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/main/include/prolog_before.php');

\Bitrix\Main\Page\Frame::getInstance()->startDynamicWithID("click_counter_nocache");

CModule::IncludeModule('iblock');

$iblockId = 2;
$elementId = 40;

// Проверяем существование элемента
$el = CIBlockElement::GetByID($elementId)->Fetch();
if (!$el) {
    echo "❌ Элемент ID=$elementId не найден в инфоблоке!";
    die();
}

// Проверяем свойство
$res = CIBlockElement::GetProperty($iblockId, $elementId, ['sort'=>'asc'], ['CODE'=>'CLICK_COUNT']);
if ($prop = $res->Fetch()) {
    $count = (int)$prop['VALUE'];
    echo "Текущее значение из БД: $count<br>";
} else {
    echo "❌ Свойство CLICK_COUNT не найдено у элемента!";
    die();
}

$newCount = $count + 1;

// Пытаемся обновить
$result = CIBlockElement::SetPropertyValuesEx($elementId, $iblockId, ['CLICK_COUNT' => $newCount]);

if ($result === false) {
    echo "❌ Ошибка при обновлении свойства!";
} else {
    echo "✅ Свойство обновлено. Новое значение: $newCount";
}

\Bitrix\Main\Page\Frame::getInstance()->finishDynamicWithID("click_counter_nocache", "");
?>
Страницы: 1
Ответить
Форма ответов
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
 

Стоимость услуг по разработке и сопровождению сайтов на 1C-Битрикс

Лендинг

от 3 дней

от 25 000 рублей

Разработка одностраничного сайта на платформе Битрикс

* стоимость зависит от наличия верстки, использования готового решения и т.д.

Интернет-магазин на готовом решении

от 7 дней

от 40 000 рублей
запуск сайта в максимально короткие сроки

* указана минимальная стоимость. Стоимость выбранной лицензии «1С-Битрикс» оплачивается отдельно.

Лечение сайтов от вирусов

восстановление сайта и подъем версии PHP

от 25 000 рублей
Лечение сайтов на решениях АСПРО и прочих.

* полный комплекс лечения проекта и закрытия дыр