Intereting Posts
Генерация тепловых карт с R, Php и Mongodb Считать конкретные значения в многомерном массиве memory_get_usage Как получить общее количество друзей, использующих API Facebook и PHP? PhpMailer: ошибка SMTP: команда EHLO не выполнена Проблема scandir с акцентами в Linux отлично работает в OSX Эффективность электронной почты PHP (BCC против отдельных сообщений электронной почты) Что / Где правила именования для действий контроллера в приложении Zend_Application Как использовать активную загрузку здесь, я имею в виду только одну переменную вместо двух. Поэтому мне не нужно запускать два отдельных запроса Как я могу запрашивать сообщения и использовать атрибут orderby для заказов в цикле в соответствии с датой meta_value? Как проверить, передаются ли переменные сеанса в uploadify.php? Попытка заставить INSERT вставлять только новые данные PHP не может читать сеансы из общего ресурса NFS Четные и четные строки для таблицы MkDir Не удалось создать каталог PHP

Как сделать индикатор выполнения с jQuery и PHP во время ожидания процесса сервера?

Раньше было легко найти решения моей проблемы, когда Google дает много точных результатов, указывающих на Stackoverflow. Но я не нашел этого для этой проблемы. Если у кого-нибудь из вас есть предложение, куда я должен идти по этой проблеме, пожалуйста, дайте мне ссылку на ответ.

Дело в том, что я хочу сделать индекс поиска из базы данных. Процесс индексирования запускается jQuery.getJSON . Для завершения этого процесса требуется несколько минут, поэтому я хочу сделать индикатор выполнения, чтобы показать этот процесс индексирования . Я знаю, как сделать общий запрос ajax, используя .getJSON как клиентскую сторону и PHP как серверную, но мне представляется сложным представить, как сделать такой индикатор прогресса.

Есть ли какое-нибудь тело, которое может объяснить мне, как это сделать?

  1. проверить интерфейс JQuery Progress UI: http://jqueryui.com/progressbar/
  2. использовать .getJSON или вызов ajax каждые 10 секунд для вызова сервера и проверки прогресса
  3. после того, как вы получите обновление хода сервера, пользовательский интерфейс

Объяснение Step2

шаг 2, как правило, основан на потоке вашего приложения, скажем, например, я вставляю 100 000 записей в MYSQL, я бы создал еще одну службу, которая проверит количество строк, а результат будет 30 000 записей, например, это означает, что сейчас прогресс составляет 30 %, поэтому, если я назову эту услугу каждые 10 секунд, я получу текущий прогресс.

Вы можете вывести javascript из вашего долгого скрипта:

 while(doThings()) { echo ' <script> updateProgress("' . $x .'%");</script>'; flush(); } 

Я лично использую bootstrap: http://getbootstrap.com/components/#progress