Показать страницу обработки, а затем перенаправить после завершения - PullRequest
0 голосов
/ 08 марта 2010

У меня есть сценарий, который занимает некоторое время.

Я хотел бы отобразить страницу во время обработки скрипта, а затем перенаправить после завершения процесса.

Например: form.php -> processing.php -> display_result.php

Мне бы хотелось, чтобы processing.php отображался сразу после отправки формы, показывая (Обрабатываете вашу информацию, подождите ...)

После завершения обработки страница должна быть перенаправлена ​​на display_result.php

В любом случае можно выполнить сортировку содержимого в браузере перед началом обработки, а затем перенаправить после завершения процесса?

Ответы [ 3 ]

1 голос
/ 08 марта 2010

Это звучит как задача Javascript / Ajax.

Ajax-вызовы асинхронны, и это делает их идеальными для того, чего вы пытаетесь достичь.

Вы отправляете содержимое формы с помощью ajax-запроса, а затем манипулируете DOM страницы, чтобы показать что-то наподобие полосы загрузки во время выполнения запроса. Когда запрос завершится, вы можете снова манипулировать DOM, чтобы показать результат обработки формы, или перенаправить на новую страницу с этой информацией.

0 голосов
/ 08 марта 2010

Вы должны использовать Ajax для этой задачи.

<div class="trigger">Trigger</div>
<div class="result"></div>
<div class="log"></div>

$('.log').ajaxStart(function() {
  $(this).text('Please wait...');
});

Ссылка
http://api.jquery.com/ajaxStart/

0 голосов
/ 08 марта 2010

Вы можете сделать это простым способом.

после отправки формы ваша обработка начинается на стороне сервера.

перенаправить пользователя на файл processing.php с простым обновлением содержимого метатега, за несколько секунд перенаправив его на тот же файл processing.php.

например <meta http-equiv="refresh" content="600">

processing.php должен иметь серверную логику скрипта, которая проверяет, завершена ли ваша обработка. если завершено, перенаправьте пользователя на display_result.php.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...