Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Загрузка файлов на сервер
Форумы портала PHP.SU » » Вопросы новичков » Загрузка файлов на сервер

Страниц (2): [1] 2 »
 

1. Генерал2001 - 10 Июля, 2016 - 05:44:10 - перейти к сообщению
Огорчение Всем доброго утра!
У меня вопрос, я научился пользоваться функцией move_uploaded_file, сначала столкнулся с проблемой, что файлы больше 2 Мб не грузит, зашёл в php.ini и там внёс изменения:
Поставил вот такие вот значения:
upload_max_filesize = 5G
post_max_size = 5G
Я поставил значения на 5 гигабайт. Я такой радостный был, но потом опять расстроился, когда узнал, что method='POST' не работает, значения от input никаких не получаю. Как переделал опять на 2 Мб, всё снова стало работать.

Вот решение, которое мне нужно:
Как мне сделать так, чтобы на сервер можно было бы загружать бесконечное количество файлов с размером хоть 100 Терробайт, но при том условии, что method="post" будет работать, то есть, чтобы с формами можно было бы работать.

Ведь мне так нахваливали этот PHP. А чё это за язык, который больше двух мегабайт загружать не умеет. Ведь знаю я много серверов, которые на PHP написаны, так там гигами выкладывают. Или может быть есть функция, которая убирает лимит или другая функция для загрузки файлов на сервер с использованием PHP?

Буду благодарен, надеюсь, что тему хорошо раскрыл.
2. andrewkard - 10 Июля, 2016 - 08:57:54 - перейти к сообщению
После изменения php.ini сервер перезагрузили?
3. Генерал2001 - 10 Июля, 2016 - 11:39:27 - перейти к сообщению
Ну естественно перезагрузил, всё заработало. Только потом перестали работать input, method="post". Вообще не мог с формами работать. Вот в чём проблема. Уже даже не в загрузке файлов.
4. Viper - 10 Июля, 2016 - 13:00:43 - перейти к сообщению
Генерал2001 или php.ini приложите или результат phpinfo(). Без них смысла нет вести тему.
5. Мелкий - 10 Июля, 2016 - 21:58:50 - перейти к сообщению
Какая ОС? Разрядность? Разрядность и версия PHP?
upload_max_filesize и post_max_size могут быть 32-битными в вашем окружении.
6. Генерал2001 - 11 Июля, 2016 - 11:40:39 - перейти к сообщению
ОС: Windows
Разрядность: 64-Бит
Версия PHP: 2.0

А что от этого может быть?
7. andrewkard - 11 Июля, 2016 - 11:41:57 - перейти к сообщению
Генерал2001 пишет:
Версия PHP: 2.0

шутите?
8. Мелкий - 11 Июля, 2016 - 12:03:06 - перейти к сообщению
Генерал2001 пишет:
Разрядность: 64-Бит
Версия PHP: 2.0

Невозможно. PHP/FI 2.0, устарел задолго до появления AMD64. В те далёкие времена и 32-битными были не все системы. Шутка ли, с 1996 (бета) по 1998 года (релиз 3.0).

Вероятно, 5.2?
Все версии PHP, кроме 7.0 и старше, под виндами только 32-битные. Значит лимит 4 гб.

Большие файлы отправлять по HTTP вообще дурацкая мысль. Не сможете по какой-нибудь причине передать последние 5 мегабайт - и придётся вам передавать весь файл заново.
9. Sail - 11 Июля, 2016 - 12:43:10 - перейти к сообщению
Мелкий пишет:
Все версии PHP, кроме 7.0 и старше, под виндами только 32-битные

И 5.5 и 5.6 есть 64-битные. Но они позиционируются как экспериментальные Улыбка
10. Генерал2001 - 11 Июля, 2016 - 12:56:31 - перейти к сообщению
И чё, если 64-битные будут, там без лимита и при этом с формами можно будет работать? input, method="post".
11. Мелкий - 11 Июля, 2016 - 12:56:57 - перейти к сообщению
Sail пишет:
И 5.5 и 5.6 есть 64-битные.

Собрать-то можно и даже соберётся. Вопрос в том, что именно соберётся. В кодовой базе PHP5.x для целых чисел использовался long. На 64-битных *nix - это собирается в 64 бита, на 64-битных виндах - это 32-битное значение. Без глубокой переработки кодой базы, сделанной в PHP7, целочисленные значения под виндами были всегда 32-битные.

https://bugs.php.net/bug.php?id=64863
https://bugs.php.net/bug.php?id=49974 и т.д.
(Добавление)
64-битные значения значения позволят выставить лимит выше 4гб.
post_max_size можно отключить установкой в 0, upload_max_filesize в мануале не описано отключение, а в исходник для странной задачи мне идти лениво.
12. Генерал2001 - 11 Июля, 2016 - 13:04:44 - перейти к сообщению
А если мне, к примеру надо будет 30 Гб? И чё тогда?
13. Viper - 11 Июля, 2016 - 13:12:29 - перейти к сообщению
Генерал2001 пишет:
А если мне, к примеру надо будет 30 Гб? И чё тогда?
ниче. Упретесь в лимит апача.
14. Генерал2001 - 11 Июля, 2016 - 13:14:29 - перейти к сообщению
Всмысле?
15. IllusionMH - 11 Июля, 2016 - 16:07:06 - перейти к сообщению
Генерал2001, нормальные люди большие файлы не грузят постом, а грузят небольшими кусками(чанками) и на сервере "собирают".
http://www[dot]resumablejs[dot]com/ и пример на пыхе https://github[dot]com/23/resumable[dot][dot][dot][dot]nd%20on%20PHP[dot]md

 

Powered by ExBB FM 1.0 RC1