Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
|
Никак. 09.09.03 10:39 Число просмотров: 1916
Автор: trent Статус: Незарегистрированный пользователь
|
|
<web building>
|
Как узнать размер файла до аплоада ? 10x 06.09.03 19:07
Автор: tdes@work Статус: Незарегистрированный пользователь
|
|
речь шла о модулях на mod_perl 09.09.03 15:49
Автор: dl <Dmitry Leonov>
|
...которыми действительно можно достатчно прилично управлять сервером, но и тут далеко не факт, что пройдет такой фокус с предварительным определением размера.
А главное, я не совсем понимаю, зачем это нужно. Разве что грубо прикинуть из content-length общий размер, чтобы отсечь загрузку заведомо больших файлов.
|
|
подразумевалось на стороне клиента 09.09.03 22:29
Автор: tdes <jin> Статус: Member
|
просто есть гостевая книга с возможностью добалять картинки, а юзеры так и норовят зааплодить свои многомегабайтные фотки, снятые дигитальными камерами, а потом ещё сцуки жалуются что у них ничего не работает.
видимо без активх/ ява аплетов etc не обойтись
|
| |
подразумевалось на стороне клиента 10.09.03 00:02
Автор: dl <Dmitry Leonov>
|
> просто есть гостевая книга с возможностью добалять > картинки, а юзеры так и норовят зааплодить свои > многомегабайтные фотки, снятые дигитальными камерами, а > потом ещё сцуки жалуются что у них ничего не работает. > видимо без активх/ ява аплетов etc не обойтись
На стороне клиента - никак. Но никто не мешает вставить в скрипт проверку размера заливаемого файла. В точной формулировке это происходит уже после upload'а, но до завершения работы скрипта.
|
| | |
ну почему никак ? яваскриптом да, но активх то может проверить 10.09.03 01:41
Автор: tdes <jin> Статус: Member
|
|
| | | |
ну, если не смущает, что исполнение неподписанных activex разрешает меньшинство пользователей, то да :) 10.09.03 07:52
Автор: dl <Dmitry Leonov>
|
|
| | | | |
тогда только меньшинству и разрешить аплоад, а объяснить это технической необходимостью. 10.09.03 10:25
Автор: !mm <Ivan Ch.> Статус: Elderman
|
|
|
а можно поинтересоваться поподробней. чего хотелось сделать? 09.09.03 15:59
Автор: hamstr Статус: Незарегистрированный пользователь
|
просто на твой вопрос возникло несколько возможных вариантов и соответственно несколько ответов....
|
|
Никак. 09.09.03 10:39
Автор: trent Статус: Незарегистрированный пользователь
|
|
| |
Можно. См. RFC 2068 (http 1.1) 09.09.03 11:36
Автор: whiletrue <Роман> Статус: Elderman
|
Там смотри то место, где говорится о теле сообщения и конкретно о Content-Length. Ну, а как с сокетами работать - знаешь.
З.Ы. FlashGet ведь умеет размер определять до аплоада, да еще и грузить по частям.
|
| | |
Можно. См. RFC 2068 (http 1.1) 09.09.03 13:43
Автор: trent Статус: Незарегистрированный пользователь
|
>Можно. См. RFC 2068 (http 1.1)
Это чтобы узнать дo download'a
Дo upload'a никак. Клиент(браузер) не позволяет никаких манипуляций, со стороны js.
К тому же Content-Length сервер не обязан отдавать и прокси бывают его режут
|
| | | |
Сори, не правильно понял... 09.09.03 13:58
Автор: whiletrue <Роман> Статус: Elderman
|
|
| | | | |
Тогда, вот для PHP вариант 09.09.03 14:12
Автор: whiletrue <Роман> Статус: Elderman
|
$HTTP_POST_FILES - поддерживает size
$HTTP_POST_FILES['userfile']['name']
The original name of the file on the client machine.
$HTTP_POST_FILES['userfile']['type']
The mime type of the file, if the browser provided this information. An example would be "image/gif".
$HTTP_POST_FILES['userfile']['size']
The size, in bytes, of the uploaded file.
$HTTP_POST_FILES['userfile']['tmp_name']
In PHP 4.1.0 or later, $_FILES should be used instead of $HTTP_POST_FILES.
Когда делаем move_uploaded_file он уже физически грузится на сервак.
|
| | | | | |
Тогда, вот для PHP вариант 09.09.03 22:34
Автор: tdes <jin> Статус: Member
|
> Когда делаем move_uploaded_file он уже физически грузится > на сервак. нет, он уже находится в $HTTP_POST_FILES['userfile']['tmp_name']
|
| | | | | |
это все уже обертка 09.09.03 14:27
Автор: dl <Dmitry Leonov>
|
Реально скрипт может что-то узнать только после того, как сервер все уже получил. Content-length относится к размеру всего тела запроса, и чтобы вытащить размер файла, серверу придется вытащить хотя бы кусок multipart-запроса.
|
| | | | | | |
Ну, а че не выход? 09.09.03 14:39
Автор: whiletrue <Роман> Статус: Elderman
|
> Реально скрипт может что-то узнать только после того, как > сервер все уже получил. Content-length относится к размеру > всего тела запроса, и чтобы вытащить размер файла, серверу > придется вытащить хотя бы кусок multipart-запроса.
Ну не весь же файл он загрузит, а кусок...
Раз речь про аплоад, значит какой-то скрипт на серваке подразумевается. А скрипт, в любом случае, не сможет получить размер самостоятельно, без веб сервера.
З.Ы. Хотя, я действительно, кажись не понял вопрос. Наверное он про javascript...
|
| | | | | | | |
Можно попытаться воспользоваться запросом HEAD 09.09.03 15:16
Автор: Yurii <Юрий> Статус: Elderman
|
> Ну не весь же файл он загрузит, а кусок...
Можно попытаться воспользоваться запросом HEAD,
тогда придет только заголовок.
Только не уверен, что все сервера его поддерживают...
|
| | | | | | | |
Ну, а че не выход? 09.09.03 14:49
Автор: dl <Dmitry Leonov>
|
> > всего тела запроса, и чтобы вытащить размер файла, > серверу > > придется вытащить хотя бы кусок multipart-запроса. > Ну не весь же файл он загрузит, а кусок...
Это исключительно теоретическое предположение, я никогда не видел, чтобы сервер так себя вел :) Схема ведь простая - все стянули с клиента, потом перекинули скрипту. Разве что свой модуль писать, и то я не уверен, что это даст желаемый результат.
> Раз речь про аплоад, значит какой-то скрипт на серваке > подразумевается. А скрипт, в любом случае, не сможет > получить размер самостоятельно, без веб сервера. > З.Ы. Хотя, я действительно, кажись не понял вопрос. > Наверное он про javascript...
Может и так, но тут ничего не даст сделать секурити.
|
| | | | | | | | |
Может perl умеет? 09.09.03 15:11
Автор: whiletrue <Роман> Статус: Elderman
|
> > > всего тела запроса, и чтобы вытащить размер > файла, > > серверу > > > придется вытащить хотя бы кусок > multipart-запроса. > > Ну не весь же файл он загрузит, а кусок... > > Это исключительно теоретическое предположение, я никогда не > видел, чтобы сервер так себя вел :) Схема ведь простая - > все стянули с клиента, потом перекинули скрипту. Разве что > свой модуль писать, и то я не уверен, что это даст желаемый > результат.
Помнится как-то Urix в споре Perl vs. PHP говорил, что мол перл умеет управлять непосредственно веб-сервером... может с этой стороны подойти?
|
|
|