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

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

Как правильно реализовать пошаговую работу скрипта на Bitrix? Если перенаправлять на страницу следующего шага через "localRedirect", то браузер считает все перенаправления одним процессом работы скрипта и через какое-то время отваливается с сообщением "превышено время работы скрипта".
  • Вопрос задан
  • 408 просмотров
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    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;
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы