![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
ShurikA |
|
|||
![]() Зануда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1364 Регистрация: 29.10.2005 Где: Канада Репутация: нет Всего: 3 |
Я не уверен что это правильный раздел для этого вопроса, но всё же:
Я пытаюсь найти способ сделать прогресс бар для закачки фаилов. Всё хто я понаходил до сих пор в нете, это только всякие библиотеки. Хотелось бы самому написать, и хотелось бы понять подход. |
|||
|
||||
Scream |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 59 Регистрация: 30.7.2006 Где: Deep Репутация: нет Всего: 1 |
Это вам в раздел JavaScript надо.
|
|||
|
||||
ShurikA |
|
|||
![]() Зануда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1364 Регистрация: 29.10.2005 Где: Канада Репутация: нет Всего: 3 |
И да и нет. Что на стороне сервера происходит? |
|||
|
||||
Canarat |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 212 Регистрация: 11.3.2008 Где: Каспий Репутация: 5 Всего: 5 |
Во временной папке создается файл, который закачиващий скрипт постепенно дописывает. Контроллер прогресс-бара просто периодически проверяет текущий размер файла и сравнивает с ожидаемым, получаемым при начале загрузки файла. Так вычисляется процентное соотношение, а дальше - красивости на JS
|
|||
|
||||
ShurikA |
|
|||
![]() Зануда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1364 Регистрация: 29.10.2005 Где: Канада Репутация: нет Всего: 3 |
Canarat,
То есть, грубо говоря должны бежать 2 процесса. 1. HTTP Upload 2. Проверяющий размер фаила. Я правильно понимаю? |
|||
|
||||
Kudzu |
|
|||
![]() Magnificus Picus ![]() Профиль Группа: Участник Сообщений: 60 Регистрация: 30.4.2008 Где: KLD Репутация: нет Всего: 1 |
1 - со стороны сервера наполняем файл
2 - со стороны клиента(ajax,js) читаем файл, считаем процент, рисуем |
|||
|
||||
Canarat |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 212 Регистрация: 11.3.2008 Где: Каспий Репутация: 5 Всего: 5 |
ShurikA, в целом - да. Скрипт может быть и один, главное - чтобы у процессов не было разногласий с именем файла, закачиваемого этим пользователем с данной страницы.
|
|||
|
||||
ShurikA |
|
|||
![]() Зануда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1364 Регистрация: 29.10.2005 Где: Канада Репутация: нет Всего: 3 |
||||
|
||||
Canarat |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 212 Регистрация: 11.3.2008 Где: Каспий Репутация: 5 Всего: 5 |
Если планируется многопоточная загрузка - можно хранить все имена файлов и соответствующие имена временных файлов в сессии. Это ИМХО наиболее простой в реализации метод. С одной страницы можно будет закачивать несколько файлов одновременно, именуя как div'ы так и поля. Реализация может быть любой.
А принцип, если позволяют знания английского, описан здесь: http://blog.joshuaeichorn.com/archives/200...pload-progress/ |
|||
|
||||
ShurikA |
|
||||
![]() Зануда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1364 Регистрация: 29.10.2005 Где: Канада Репутация: нет Всего: 3 |
Спасибо.
Вопрос в другом: Как я знаю название временного фаила если фаил ещё не загружен до конца? Я базируюсь на обычный стандартный upload херез РНР |
||||
|
|||||
awers |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1465 Регистрация: 22.3.2006 Где: Россия, Таганрог Репутация: 21 Всего: 31 |
Ajax не подойдет.. Тут либо java либо flash с ответной стороной php на сервере
|
|||
|
||||
Kudzu |
|
|||
![]() Magnificus Picus ![]() Профиль Группа: Участник Сообщений: 60 Регистрация: 30.4.2008 Где: KLD Репутация: нет Всего: 1 |
||||
|
||||
ShurikA |
|
|||
![]() Зануда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1364 Регистрация: 29.10.2005 Где: Канада Репутация: нет Всего: 3 |
||||
|
||||
MoLeX |
|
|||
![]() Местный пингвин ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4076 Регистрация: 17.5.2007 Репутация: 46 Всего: 140 |
ShurikA, если нужно готовое решение то погляди это. товарищи из JS раздела подсказали где и на что изменить отдельный фрагменты кода, чтобы работал в разных браузерах...
-------------------- Amazing ![]() |
|||
|
||||
solenko |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1473 Регистрация: 15.1.2006 Где: Украина Репутация: 34 Всего: 67 |
Тема поднимается с периодичностью раз в месяц. Может стоит закрепить ее и описать все методы?
Собственно, известные мне методы: 1. Решение с помошью flash/java на стороне клиента 2. Решение с помошью другого языка/технологии на стороне сервера (обычно файл принимает perl скрипт) 3. Использование расширения ACL 4. (мифический) анализ размера файла в tmp -------------------- Ла-ла-ла-ла Заметьте, нет официального подтверждения, что это не просто четыре слога. |
|||
|
||||
ShurikA |
|
||||
![]() Зануда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1364 Регистрация: 29.10.2005 Где: Канада Репутация: нет Всего: 3 |
Мне так и не удалось понять следующее:
Нет, хотелось бы самому написать, по этому и пытаюсь понять. Добавлено через 7 минут и 30 секунд
Думаю, будет это перл, РНР или ещё какая задрыга, абсолютно не важно. В любом случае дело не только в серверной стотоне. Но правда на стороне клиента, в принцепе, нужно только рапросить и отрисовать. Вопрос только что тохно запрашивать. |
||||
|
|||||
Валерия |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 598 Регистрация: 10.3.2007 Репутация: 3 Всего: 8 |
Ставлю php_uploadprogress.dll под апач (винда)
Когда пытаюсь запустить какойто пример использующий прогресс-бар - апач завершает работу о_О Это сообщение отредактировал(а) Валерия - 23.9.2008, 18:12 |
|||
|
||||
Валерия |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 598 Регистрация: 10.3.2007 Репутация: 3 Всего: 8 |
Хоть у когото вообще получилось сделать прогресс бар под виндовым сервером?)
А еще лучше под денвером ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |