![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
andreymir |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 15.7.2009 Репутация: нет Всего: нет |
С клиента отправляется форма в формате multipart/form-data. Там приходят большие файлы ( до 100 мб). Пользователь может отменить отправку, и тогда на сервер приходит неполный запрос. Чтобы отбрасывать такие я решил сравнить хэдер Content-Length и фактический размер полученного запроса. Как в php получить размер тела запроса?
|
|||
|
||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
Обычно в РНР используются встроенные механизмы обработки запросов, и нужды в ручной обработке нет.
|
|||
|
||||
pizzz |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 238 Регистрация: 14.12.2008 Где: Омск Репутация: 6 Всего: 8 |
На вскидку
Еще надо учесть что $v может быть массивом... --------------------
Спасибо много, жмем кнопку репутация. Извините меня за орфографические ошибки, я стараюсь не ошибаться, а они все равно просачиваются гады. |
|||
|
||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
pizzz, вы точно внимательно прочитали вопрос?
|
|||
|
||||
andreymir |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 15.7.2009 Репутация: нет Всего: нет |
ну да, например, отправилось 20 мб файла из 100, и будет в $_FILES['filedata'] бинарных данных на 20 мб. + в $_POST будут не все поля, а те, которые идут в запросе до поля filedata. Как видите, запрос получен не целиком, но то что получено парсится и передается в мой серверный скрипт. И спрашивается нафига %) ... Надо такие ситуации как-то определять и игнорировать... Это я к тому, что нужда все-таки есть.
А вариант с
не подходит потому что так посчитается размер значений полей, а там ведь еще имена параметров, переводы строк и пр. в теле запрсоа. Это сообщение отредактировал(а) andreymir - 1.9.2009, 10:52 |
|||
|
||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
||||
|
||||
andreymir |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 15.7.2009 Репутация: нет Всего: нет |
Да, тут я ошибся немного. В $_FILES['filedata'] будет
$_FILES['filedata']['size'] - тут 0 $_FILES['filedata']['tmp_name'] - тут пусто $_FILES['filedata']['name'] - тут имя отправленного файла. как видите, хоть файл и не пришел (пришел не полностью), но поле с таким именем есть. |
|||
|
||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
Скажите, вы читали в документации описание загрузки файлов?
|
|||
|
||||
andreymir |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 15.7.2009 Репутация: нет Всего: нет |
читал
![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |