Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Я чуть со стула не упал


Автор: Master 26.11.2003, 11:51
Звонит заказчик... говорит что мол в админке к сайту не закачиваются файлы на сервер...
и при этом скрипт не пишет никакой ошибки...

Я полез разбираться... у меня стоит в скрипте ограничение проверяющее HTTP_POST_FILES['files_name_zip']['size'] чтобы файл не превышал 2 Mb... так вот решил попробывать... закачиваю файл размером 2.6 Mb... и действительно... переменная $HTTP_POST_FILES['files_name_zip']['size'] = 0 mad.gif
Дело скорее в ограничении размера закачиваемых файлов в самом ПХП...
А надо чтобы при ошибки... скрипт писал, что файл большой.
Че делать? bored.gif

Автор: pascal 26.11.2003, 12:11
В HTML форме закачки можно указать максимальный размер файла...
конечно сайз будет 0, так как по умолчанию в php тоже есть ограничение на размер файла и равен он двум метрам...

Автор: MuToGeN 26.11.2003, 12:33
<input type="hidden" name="MAX_FILE_SIZE" value="кол-во байт">

Автор: Гость 26.11.2003, 13:19
Для PHP >= 4.2.0

if ($HTTP_POST_FILES['files_name_zip']['error'] == 1) echo "Большой файл. Низзя.";

http://php.net/manual/en/features.file-upload.php это раз
http://php.net/manual/en/features.file-upload.errors.php это два


Автор: Vaulter 26.11.2003, 15:00
Цитата
ак как по умолчанию в php тоже есть ограничение на размер файла и равен он двум метрам...

более того, еще и в самом апачи есть ограничение на POST "приход" ))

Автор: Wowa 27.11.2003, 03:19
Считывайте файл с винта побайтно в цикле. И считайте размер сами. Как только превысит 2 метра, так сразу ошибку пусть выдает.

Автор: Unregistered 27.11.2003, 13:51
>>Считывайте файл с винта побайтно в цикле. И считайте размер сами. Как только превысит 2 метра, так сразу ошибку пусть выдает.

Ага,качается-качается полчаса,а потом такой кукиш из экрана ;)

Автор: Wowa 27.11.2003, 20:19
Ну размер файла на винте у пользователя все равно нельзя определить, поэтому другого выхода нет имхо.

Автор: Unregistered 28.11.2003, 15:14
Я не большой спец в таких вопросах,но в ie можно через Jscript.

Автор: Master 28.11.2003, 16:12
Во первых JS это клиентский язык... данные все равно придется отправлять на сервер каким бы то ни было путем... а считать файл с компа клиента серверным сценарием.... хм... я бы поглядел как такое сделать biggrin.gif

Автор: Wowa 30.11.2003, 02:19
Цитата
но в ie можно через Jscript.

Да? Как?

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

Автор: MuToGeN 30.11.2003, 05:34
> Да? Как?

Scripting.FileSystemObject

Автор: Guest 2.12.2003, 17:54
На всякий случай-jscript и javascript не одно и тоже!Jscript-это майкрософтовский вариант javascript.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)