Aspro

Перестала работать страница заказа после обновления Аспро Максимум

Aspro. Исправление ошибки на странице заказов /order/index.php после обновления.

sqlka.ruОпубликовано: Чтение: 1 мин.
Перестала работать страница заказа после обновления Аспро Максимум

После обновления Аспро Максимум не открывается страница заказа /order/index.php

После обновления шаблона Аспро Максимум перестала открываться страница оформления заказа /order/index.php. В логе NGINX появилась следующая ошибка:

[error] 133509#133509: *109715 FastCGI sent in stderr: "PHP message: PHP Fatal error: Uncaught Error: Call to a member function SetTitle() on null in /srv/http/site.ru/order/index.php:2
Stack trace: #0 {main} thrown in /srv/http/site.ru/order/index.php on line 2" while reading response header from upstream, client: "", server: site.ru, request: "GET /order/ HTTP/2.0", upstream: "fastcgi://unix:/var/run/php-fpm/php-fpm.sock:", host: "site.ru"

Проблема в том, что после обновления из файла /order/index.php исчезла строка подключения пролога (хедера) Битрикс. Без неё объект $APPLICATION не инициализирован, поэтому вызов $APPLICATION->SetTitle() приводит к фатальной ошибке.

Достаточно вернуть недостающую строку, и страница снова заработает. Правильный код файла должен выглядеть так:

<?php
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
$APPLICATION->SetTitle("Оформление заказа");
?>
<?$APPLICATION->IncludeComponent(
    "bitrix:sale.order.ajax",
    "v1",
    array(
        "PAY_FROM_ACCOUNT" => "Y",
        "ONLY_FULL_PAY_FROM_ACCOUNT" => "N",
        "COUNT_DELIVERY_TAX" => "Y",
        // ... остальные параметры компонента
    )
);?>

После добавления require(...) ошибка исчезнет, и заказы снова можно будет оформлять.

Хотите освоить SQL для работы с данными?

В SQLka можно изучать SQL последовательно или готовиться к собеседованиям. Запросы выполняются прямо в браузере — устанавливать базу данных не нужно.

sqlka.ru

support@sqlka.ru

Дальше по теме

← Все статьи