Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Проверка размера файла (https://javascript.ru/forum/events/3453-proverka-razmera-fajjla.html)

Kakao 21.04.2009 10:23

Проверка размера файла
 
Мне нужно определить размер загружаемого на сервак файла до его загрузки.
ПХП-то это делает элементарно, но приходится загружать файл на сервер и уже потом определять.
Может кто-нить знает, как это сделать с помощью javascript еще до отправки? Чтобы, при превышении размера, сразу выскакивало предупреждение: "Низя!".

Kolyaj 21.04.2009 10:34

Цитата:

Сообщение от Kakao
Чтобы, при превышении размера, сразу выскакивало предупреждение: "Низя!".

Для этого можно сделать hidden-поле
<input type="hidden" name="MAX_FILE_SIZE" value="значение в байтах">

Kakao 21.04.2009 10:37

Это не работает во многих браузерах.
Нужен друугой рецепт.

Kolyaj 21.04.2009 10:44

Другого нет.

Kakao 21.04.2009 10:58

Рецепта нет, или ты его не знаешь?
Например, в gmail такая вещь присутствует (правда я не знаю, как работает).

Kolyaj 21.04.2009 11:05

Цитата:

Сообщение от Kakao
Рецепта нет, или ты его не знаешь?

Я его не знаю, потому что его нет. У JavaScript нет доступа к файлам.

Цитата:

Сообщение от Kakao
в gmail такая вещь присутствует (правда я не знаю, как работает).

Файлы закачиваются на сервер в фоновом режиме, пока пишется письмо, и на сервере определяется его размер.

Kakao 21.04.2009 18:41

Не. В gmail так не делается. Я, однажды, попытался отправить филе размером в 60Mb - я как его выбрал, gmail в тот же момент ответил, что больше 25 метров нельзя. Так что фона никакого нет. Можешь сам попробовать.
Есть еще какие-нить идеи?

Kolyaj 21.04.2009 18:47

Цитата:

Сообщение от Kakao
Есть еще какие-нить идеи?

Flash-загрузчик.

x-yuri 27.04.2009 02:43

вообще-то действительно в ie и opera (в ff вообще как-то странно работает) предупреждение появляется сразу после выбора файла... у меня не такой быстрый inet, чтобы 25МБ вот так сразу закачалось

Kakao 27.04.2009 12:00

Вот и я о том же!
Но чё-та народ пока не в курсе, как это работает...
На php-овом форуме тоже спрашивал, но и там народ ничего толкового сказать не может.


Часовой пояс GMT +3, время: 15:15.