Эта тема на forum.dklab.ru


nonamezzz: Закачка файла на сервер
Друзья! Тут возник вот такой вопрос: можно ли при закачке юзером некоего файла на сервер сообщать юзеру о прогрессе (т.е. о том, сколько сервер уже принял)? Положим, файл большой, а соединение медленное - хочется знать, сколько ждать еще...
Евгений Бондарев:
nonamezzz:

Нет.
nonamezzz:
Нет.
Уверенный ответ. Однако извернуться можно всегда... Думаю, что-нить придумаем, мб даже на стороне клиента
html:
Нет.
Уверенный ответ. Однако извернуться можно всегда... Думаю, что-нить придумаем, мб даже на стороне клиента
Вообще честно говоря мне тоже кажется, что и в этом случае можно что-то сделать!!
Надо будет обмозговать механизмик...
Юрий Насретдинов:
Думаю, что-нить придумаем, мб даже на стороне клиента
Вам повторить ? Нет, это НЕВОЗМОЖНО ! Хотите - пишите компонент ActiveX для IE, который будет мониторить траффик, идущий от браузера, и т.д. Я думаю, оно Вам не надо. Как говорится, «овчинка выделки не стоит»
Дмитрий Котеров:
Ну, зачем же сразу так категорично. Это в PHP нельзя, скорее всего. А в CGI (например, в Perl) — можно. Ведь CGI-скрипт самостоятельно принимает данные закачиваемого файла, он может и записывать куда-нибудь данные, сколько уже закачалось, а другой скрипт — соответственно, эти данные в невидимом фрейме периодически считывать.

В принципе, если PHP при закачке записывает файл во временную директорию более-менее маленькими порциями, то можно «угадать» его имя, и другим скриптом в отдельном фрейме периодически отдавать filesize($tmp). Но вот насчет угадывания имени — довольно тяжело: я посмотрел исходники PHP, там нет общего алгоритма формирования временного имени. Так что единственный способ — это просканировать всю /tmp в поисках файлов с владельцем, равным владельцу текущего скрипта, и отслеживать их. Если вдрг стартуют две закачки одновременно, то будет, конечно, нехорошо.
DmitriyPopov:
Дмитрий, я даже больше скажу - есть скрипты которые это реализовывают =).
В первом, или пилотном номере "PHPInside" можно посмотреть - там было.


P.S. кто не знает PHPInside - http://detail.phpclub.net/pages/phpmag.phtml

Эта тема на forum.dklab.ru