Title
PHP
<?php
// 1. Указываем, что мы отдаем обычный текст, а не HTML
header('Content-Type: text/plain; charset=utf-8');
// 2. Отключаем обработку событий Битрикса и HTML-вывод
define('NO_KEEP_STATISTIC', true);
define('NOT_CHECK_PERMISSIONS', true);
define('CHK_EVENT', true);
// 3. Подключаем только минимальное ядро
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
// 4. Ваша проверка ключа
$secret_key = 'MY_SUPER_SECRET_123';
if ($_POST['key'] !== $secret_key) {
die('Access Denied');
}
// 5. Логика добавления элемента (как у вас было)
CModule::IncludeModule("iblock");
$el = new CIBlockElement;
$arFields = array(
"IBLOCK_ID" => 87,
"IBLOCK_SECTION_ID" => 5549,
"NAME" => $_POST['title'] ?? 'Без названия',
"DETAIL_TEXT" => $_POST['text'] ?? '',
"ACTIVE" => "Y",
);
if($PRODUCT_ID = $el->Add($arFields)) {
echo "Success: ".$PRODUCT_ID;
} else {
echo "Error: ".$el->LAST_ERROR;
}
// 6. Обязательно завершаем выполнение, чтобы Битрикс не догрузил HTML
die();
?>