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

Размер загружаемого файла

12.04.2011, 23:18. Показов 23108. Ответов 30
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую. Такая проблема: необходимо узнать размер загружаемого файла на сервер до его загрузки. На сколько я понял, это не под силу яваскрипту и PHP. Подскажите плиз решение попроще .
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.04.2011, 23:18
Ответы с готовыми решениями:

Размер загружаемого файла
Здравствуйте. Есть задача загрузить на сайт книги с расширением fb2. Загружаю с помощью следующего кода: <p> ...

Как увеличить размер загружаемого файла более чем 100М ?
До 5 гигов?!

Размер загружаемого изображения
Друзья, как изменить скрипт чтобы изображения меняли свой размер. $file_name= strtolower(implode('.',...

30
143 / 109 / 13
Регистрация: 13.02.2010
Сообщений: 522
13.04.2011, 16:20
Цитата Сообщение от Jarlaxle Посмотреть сообщение
Приветствую. Такая проблема: необходимо узнать размер загружаемого файла на сервер до его загрузки. На сколько я понял, это не под силу яваскрипту и PHP. Подскажите плиз решение попроще .

HTML5
1
2
3
4
<form action="./" method="post">
<input name="f" type="file" />
<button type="submit">googoo</button>
</form>
PHP
1
if(isset($_FILES["f"])) var_dump($_FILES["f"])
в $_FILES["f"]["size"] размер файла в байтах
0
0 / 0 / 1
Регистрация: 12.04.2011
Сообщений: 41
13.04.2011, 16:24  [ТС]
$_FILES["f"]["size"] покажет размер уже загруженного на сервер файла.
А мне надо узнать размер файла до того, как он начнет загружаться. То есть, допустим, макс. допустимый размер - 2 мб, а пользователь выберет файл весом 10000гб, и пока не загрузятся эти 10000гб, пхп не скажет, что вес превысил допустимый...
0
143 / 109 / 13
Регистрация: 13.02.2010
Сообщений: 522
13.04.2011, 16:39
Цитата Сообщение от Jarlaxle Посмотреть сообщение
$_FILES["f"]["size"] покажет размер уже загруженного на сервер файла.
А мне надо узнать размер файла до того, как он начнет загружаться. То есть, допустим, макс. допустимый размер - 2 мб, а пользователь выберет файл весом 10000гб, и пока не загрузятся эти 10000гб, пхп не скажет, что вес превысил допустимый...
чтобы загрузить файл на сервер вам придется дописать вот такой код к примеру
PHP
1
copy($_FILES["f"]["tmp_name"], 'путь до папки в которую нужно загрузить!');
в $_FILES["f"]["tmp_name"] содержится закодированная информация на сайте если ее не загрузить то она отчистится со временем!!!

Добавлено через 5 минут
а js можно и обойти если захотеть так что это у тебя единственная возможность узнавать размер файла на стороне сервера!

а если ты просто передаешь и не используешь copy то файлу тебя не загрузиться=)

Добавлено через 1 минуту
а в тег <form> припиши параметр enctype="multipart/form-data" иначе не заработает!
0
0 / 0 / 1
Регистрация: 12.04.2011
Сообщений: 41
13.04.2011, 16:45  [ТС]
Вы читаете, что я пишу?)
Я умею загружать файлы, мне необходимо проверить размер файла ДО ТОГО как он начнет загружаться.
0
143 / 109 / 13
Регистрация: 13.02.2010
Сообщений: 522
13.04.2011, 16:47
это возможно только на js но это обходиться за 5 минут. иного пути я не вижу!
0
0 / 0 / 1
Регистрация: 12.04.2011
Сообщений: 41
13.04.2011, 17:04  [ТС]
Это невозможно ни на яваскрипте, ни на пхп. Вот я и прошу сказать как это сделать любым другим способом, желательно попроще.
0
143 / 109 / 13
Регистрация: 13.02.2010
Сообщений: 522
13.04.2011, 17:04
в upload_max_filesize конфигурационного файла php.ini.

указывается максимальный размер файла или можно передовать максимальный размер из html
HTML5
1
 <input type="hidden" name="MAX_FILE_SIZE" value="30000" />
и при загрузки файла если он превысит размер максимальный размер то в $_FILES['f']['error']
вернется ошибка 1 если превысил макс размер в php.ini 2 если превысил размер заданный в html name="MAX_FILE_SIZE"

соответственно файл не загрузиться даже во временный каталоге
1
0 / 0 / 1
Регистрация: 12.04.2011
Сообщений: 41
13.04.2011, 17:06  [ТС]
Вот это уже ближе к истине, спасибо. Но эта форма легко обходится...мне нужно что-то понадежнее.
0
143 / 109 / 13
Регистрация: 13.02.2010
Сообщений: 522
13.04.2011, 17:12
Цитата Сообщение от Jarlaxle Посмотреть сообщение
Вот это уже ближе к истине, спасибо. Но эта форма легко обходится...мне нужно что-то понадежнее.
в upload_max_filesize конфигурационного файла php.ini.

достучаться можно через .htaccess расположенный в корне вашего сайта=)

вот мой пример .htaccess

Code
1
2
3
4
5
php_value  post_max_size  1000M
php_value  upload_max_filesize  1000M
php_value  max_execution_time   10000
php_value  max_input_time  10000
php_value  memory_limit 1024M
вопрос разрешат ли вам такую операцию из .htaccess хостеры, но это уже вопрос выбора площадки под сайт=)
0
0 / 0 / 1
Регистрация: 12.04.2011
Сообщений: 41
13.04.2011, 17:14  [ТС]
Куда достучаться? Не совсем понял...
0
143 / 109 / 13
Регистрация: 13.02.2010
Сообщений: 522
13.04.2011, 17:31
ну и по логике в $_FILES['f']['error'] вернется 1
что глоссит что файл слишком большой=)

Добавлено через 4 минуты
к файлу php.ini в этом файле находятся настройки php при загрузки сервера! но вы не имеете к нему доступ если только это не ваш сервер, а если ни ваш то вам никто не даст к нему доступ=)

а значит максимум что вы можете себе позволить это создать файл с названием .htaccess в корневом корневом каталоги и указать там настройки для php.ini если ваш хостинг это позволяет!

Добавлено через 11 минут
хотя ни знаю зачем это вам надо так как по умолчанию php настроен так что вы можете заливать файлы не выше 2-5метров у меня на хостинге 3метра можно заливать! и я из .htaccess увеличивал максимальный размер загрузочного файла. и так же если вы будете лить файлы выше 30метров советую увеличить
memory_limit - объем оперативной памяти выделяемый сервером на выполнения скрипта
max_execution_time и max_input_time - максимально время выполнения скрипта.
1
0 / 0 / 1
Регистрация: 12.04.2011
Сообщений: 41
13.04.2011, 17:44  [ТС]
что-то не работает. <input type="hidden" name="MAX_FILE_SIZE" value="1000" /> игнорится. А при htaccess выдает ошибку опять только после загрузки файла...
0
143 / 109 / 13
Регистрация: 13.02.2010
Сообщений: 522
13.04.2011, 18:08
да но размер файла попавшего во в ременную директорию не превысит размера указанного в htaccess а значит файл загрузился не полностью) а только часть файла)
0
0 / 0 / 1
Регистрация: 12.04.2011
Сообщений: 41
13.04.2011, 18:12  [ТС]
Мне бы чтобы вообще не грузилось ничего, если выбран файл весом > допустимого))
0
143 / 109 / 13
Регистрация: 13.02.2010
Сообщений: 522
13.04.2011, 18:14
так нельзя!
0
0 / 0 / 1
Регистрация: 12.04.2011
Сообщений: 41
13.04.2011, 18:17  [ТС]
да можно Только вопрос - как? Где-то прочитал, что с помощью flash аплоада, а не html, но с action script выше 2.0 я не дружу.))
0
143 / 109 / 13
Регистрация: 13.02.2010
Сообщений: 522
13.04.2011, 18:22
Цитата Сообщение от Jarlaxle Посмотреть сообщение
Где-то прочитал, что с помощью flash аплоада, а не html
да но во флеш доже передаются данные и его тоже обмануть легко, также как и html труда не составит!
http://www.uploadify.com/
0
0 / 0 / 1
Регистрация: 12.04.2011
Сообщений: 41
13.04.2011, 18:24  [ТС]
Хорошо, тогда может стоить ограничить не размер файла (уже загруженного), а время загрузки..мол если загружаешь файл > 30 секунд => exit;
0
143 / 109 / 13
Регистрация: 13.02.2010
Сообщений: 522
14.04.2011, 00:55
не вижу смысла в этой бессмысленной операции!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.04.2011, 00:55
Помогаю со студенческими работами здесь

Переименование загружаемого файла
Вопрос: Как переименовать фаил при загрузке его на сервер через форму!? Можно ли в этом случае использовать int rename ( string old,...

Проверка загружаемого файла
Нужно проверить файл на странице оброботки, чтобы он был с именем, в которое входят только английские буквы и цифри. &lt;form...

Проверка размера загружаемого файла
Суть проблемы вот в чем: есть некоторая проверка размера загружаемого файла прямо в форме, на php, что-нибудь вроде: if ($_FILES...

Проверка формата загружаемого файла
if ($_FILE == &quot;image/gif&quot; || $_FILE == &quot;image/png&quot; || $_FILE == &quot;image/jpeg&quot;) { //продолжаем загрузку } else {// тут если файл не...

MIME тип загружаемого файла
Есть форма которая загружает файлы в папку, она работает. Хочу сделать проверку по типу файла, не выходит. &lt;form action=upload.php...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru