| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Общие вопросы > Как узнать закончил ли закачку файла клиент? |
| Автор: jeans1986 5.7.2007, 05:41 |
| Как узнать закончил ли закачку фаила клиент и при окончании вывести окно с благодарностью. Т.е мне надо узнать момент окончания закачки файла. Заранее благодраю. |
| Автор: ksnk 5.7.2007, 08:51 |
| Закачку к себе или на сервер? |
| Автор: jeans1986 5.7.2007, 14:27 |
| закачку к себе на компьютер |
| Автор: ksnk 5.7.2007, 17:07 |
| Вообще говоря - никак... Можно поизвращаться: написать Ajax - сервис, который периодически получает процент загрузки с сервера, для этого выдавать скрипт с помощью PHP скрипта, соответственно процент - позиция текущего чтения в файле. после того как все это добро написано и минимально отлажено - стоит представить себе загрузку этого файла в многопоточном DownloadManager'е, с докачкой и прекачкой и согласится, что разумно употребленная лень позволит сэкономить время для остальной жизни... ;) |
| Автор: szz 20.7.2007, 07:13 | ||
Хехе, а как по-твоему PHP файл бужет узнавать текущий процент отправляемого файла? Чет я себе это не очень представляю 2 jeans1986, единственное решение (которое я знаю), это использовать фичи флеш плеера >=8, но разуцмеется тогда придется писать свою флешку для этого и, конечно, у клиента длжен стоять плеер (обычно есть), но в любом случае нужно или 1. требовать флеш 2. или еще и писать альтернативный способ - обыкновенный, безо всяких благодарностей. Твоя страница определяет, есть ли флеш, и запускает тот или иной вариант. Кстати, с помощью флеша ты можешь также и закачивать управляемо файлы на сервер, показывая прогресс прям в браузере. |
| Автор: szz 20.7.2007, 08:21 |
| короче, скачка вроде делается так: 1. или дается просто линк на скачиваемый файл, например "file.zip" 2. или пропускается через собственный скрипт, например "get_file.php?x=file.zip" во втором случае можно вываливать файл кусками, постоянно записывая в базу текущий процент вываливания, что и будет читать тот самый аяксовый демонстратор. Но нет никакой гарантии, что сервер сначала не подготовит файл, а потом уже будет выдавать. а в первом случае это вообче невозможно, так как мы не управляем процессом - этим занимается сервер самостоятельно. или я что-то не понимаю? |
| Автор: ksnk 20.7.2007, 08:43 |
| Вероятно следует потренироваться не только читать и писать, но ищё с понимать прочтенное и написанное. |