То, как я это сделал, это записать прогресс с уникальным идентификатором (например, UUID) в базу данных.Затем вы можете использовать AJAX для опроса другого сценария , чтобы получить информацию о ходе выполнения сценария.
Таблица базы данных может выглядеть следующим образом:
InsertedOn | Data | UUID
2011-02-12 13:01 | MyProcessData1 | MyUUID1
2011-02-12 13:02 | MyProcessData2 | MyUUID1
2011-02-12 13:03 | MyProcessData3 | MyUUID1
2011-02-12 13:10 | MyProcessData1 | MyUUID2
2011-02-12 13:11 | MyProcessData2 | MyUUID2
2011-02-12 13:12 | MyProcessData3 | MyUUID2
Например:
- Начать процесс, описанный выше, с помощью запроса AJAX.Запрос запустит приведенный выше код в виде потока (поэтому он немедленно вернется) и вернет значение UUID, представляющее запрос
- . Описанный выше процесс запишет прогресс в таблицу базы данных с UUID для каждой записи * 1013.*
- Опрос с использованием другого сценария с использованием AJAX каждые несколько секунд с использованием значения UUID для поиска прогресса на данный момент
Возможно, существуют и другие способы!
Надеюсь, это поможет.Киран