| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > PECL uploadprogress |
| Автор: Ripper 25.5.2013, 17:50 | ||
| Добрый день Пытаюсь сделать индикатор загрузки с помощью pecl uploadprogress. Но не понимаю как отследить статус загрузки. Функция uploadprogress_get_info возвращает либо инфу о загружаемом файле, либо false, причем если false это может означать что загрузка еще не началась, либо закончилась, либо ошибка. Я на jQuery отправляю аяксом post запрос, после чего начинается загрузка. Далее ставлю таймер который каждые сколько то миллисекунд отправляет запрос на сервер с целью получить сколько мы уже загрузили. Но эти две вещи - асинхронные, т.е. бывает так что загрузка файла еще не началась, а я уже чекаю на то, сколько загрузилось, и получаю false. А бывает так что загрузка завершилась, а запрос на проверку размера пришел после загрузки, и тоже false. Ну собственно вот код (codeigniter):
Я находил пример где как-то с iframe-ом это делают, только еще дело в том, что, после загрузки файла у меня еще кое-какая логика выполняется, которая тоже занимает время. И мне нужно различать, когда непосредственно загрузился файл, а когда после этого закончилась логика. Ну например... загрузился файл и добавили запись в БД. Я хочу отобразить прогресс бар с загрузкой файла, а после того как файл загрузился, вывести надпись "Добавление в базу данных...", а после уже добавления написать что типа все ОК. А в примере было onload iframe = uploading finished, но это не совсем так |