Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
1 / 1 / 0
Регистрация: 14.07.2013
Сообщений: 27

Определить размер файла при загрузке на сервер и отменить загрузку, если она уже началась

17.07.2018, 21:33. Показов 998. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
На случай, если браузер посетителя не поддерживает File API (загрузка файлов на сервер через javascript), составляю код запасного варианта - загрузки файлов через iFrame.

Перерыл множество материала в инете на тему определения средствами PHP размера файла ДО ЕГО ОКОНЧАТЕЛЬНОЙ ЗАГРУЗКИ на сервер, но так и не нашёл вразумительного алгоритма. Понял только, что люди это делают через заголовок Content Length. Если есть кто в теме, подскажите, пожалуйста, подробнее, как это делается.

Если удастся определить размер файла, то в случае превышения допустимой величины хотелось бы отменить начатую загрузку. Возможно ли это сделать? Или есть возможность определять размер вообще ДО ЗАГРУЗКИ?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.07.2018, 21:33
Ответы с готовыми решениями:

Уменьшить размер фотографии при загрузке на сервер
Добрый день как сделать, если размер фотки больше заданного, уменьшить ее до заданного. Я так понял, что $_FILES только показывает размер...

Как отменить загрузку текста в TextBox из файла в случае его отсутствия
При изменении Texbox'ов программа записывает в фаил "1.txt" изменения. А при запуске программы изменяет значения Texbox'ов на указанные в...

Как отменить повторные запуски, если программа уже запущена?
Подскажите, как можно сделать, чтоб если моя программа уже запущенна, то не загружалась вторая ? Желательно код... хотя объяснения и...

2
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
17.07.2018, 21:37
Нужно в настройках веб-сервера выставить максимальный возможный размер тела запроса.
0
1 / 1 / 0
Регистрация: 14.07.2013
Сообщений: 27
18.07.2018, 11:37  [ТС]
Если мы делаем <form action="ajax.php/upload.php">, то скрипт ajax.php/upload.php ведь сработает только после полной загрузки формы со всеми файлами. Как тогда можно узнать Content-length заранее?

Добавлено через 1 час 42 минуты
Яндекс в своём блоге написал следующее:
Для определения размера файлов у пользователей без флеша мы подняли внутренний сервис, который работал так: клиент отправлял файл POST запросом на специальный url, сервер читал заголовок Content-Length запроса и закрывал соединение.

Реализация загрузки файлов во всех браузерах построена так, что он не ожидает ответа от сервера, пока полностью не отправит файл. Поэтому сервер не может сразу сообщить размер файла. Для решения этой проблемы мы делали второй GET-запрос, в котором сервер передавал клиенту значение заголовка Content-Length, равное размеру загружаемого файла.
Кто-нибудь понимает, как это сделать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.07.2018, 11:37
Помогаю со студенческими работами здесь

Зачем при передаче матрицы в функцию, передавать вторым аргументом её размер, если в первом он уже указан?
Добрый день господа.Объясните пожалуйста почему при вызове функции f() В левый индекс ничего не засовывается и для чего нужен правый...

Название файла при загрузке на сервер
&lt;? $filew = $_FILES; $filename = $_FILES; if(!empty($filew)) { ini_set('memory_limit', '32M'); $maxsize = &quot;100000000&quot;; ...

Определить размер файла, и если этот размер меньше определенного, скопировать этот файл в другой каталог
Задача: определить размер файла по указанному пути, и если этот размер меньше определенного скопировать этот файл в другой каталог. ...

Имя для файла при загрузке на сервер
Доброго времени суток.При разработке интернет-магазина столкнулся с проблемой: при загрузке товара и загрузке фото товара на сервер имени...

При загрузке файла на сервер меняется кодировка
Здравствуйте, возник такой вопрос: Написал код для загрузки на сервер, файлы загружаются все хорошо, только когда загружаю файлы с русским...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru