Задать вопрос
@photosho

Как реализовать пошаговое выполнение скрипта?

Как правильно реализовать пошаговую работу скрипта на Bitrix? Если перенаправлять на страницу следующего шага через "localRedirect", то браузер считает все перенаправления одним процессом работы скрипта и через какое-то время отваливается с сообщением "превышено время работы скрипта".
  • Вопрос задан
  • 414 просмотров
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
@KukuRuku
Пример из файла /bitrix/modules/search/admin/search_reindex.php

if ($_SERVER["REQUEST_METHOD"] == "POST" && $_REQUEST["Reindex"] == "Y") {
    @set_time_limit(0);

    $res = CSearch::ReIndexAll(
        $bFull, COption::GetOptionInt("search", "max_execution_time"), $NS, $_REQUEST["clear_suggest"] === "Y"
    );

    if (is_array($res)):
        ?>
        <script>
            CloseWaitWindow();
            DoNext(<?echo $jsNS?>);
        </script>
    <?php
    else:
        ?>
        <script>
            CloseWaitWindow();
            EndReindex();
            var search_message = BX('search_message');
            if (search_message)
                search_message.style.display = 'none';
        </script>
    <?php
    endif;
}


function DoNext(NS) {
    var queryString = 'Reindex=Y'
        + '&lang=<?echo htmlspecialcharsbx(LANG)?>';

    ...

    ShowWaitWindow();
    BX.ajax.post(
        'search_reindex.php?' + queryString,
        NS,
        function (result) {
            document.getElementById('reindex_result_div').innerHTML = result;
            var href = document.getElementById('continue_href');
            if (!href) {
                CloseWaitWindow();
                StopReindex();
            }
        }
    );

    return false;
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
IT ATLAS Москва
от 250 000 до 500 000 ₽