Собственно, при загрузке файла через форму, размер которого превышает установленные в php.ini, поля формы не отправляются. Необходимо как-то это перехватить, чтобы вывести сообщения для пользователя, что файл слишком большой.
В логе запись создается вида, но в остольном никаких варнингов в браузере нет:
[12-Jan-2018 09:57:22 UTC] PHP Warning: POST Content-Length of 13007285 bytes exceeds the limit of 5242880 bytes in Unknown on line 0
В какую сторону копать?
1. Graf_Duku - 12 Января, 2018 - 12:10:46 - перейти к сообщению
2. Строитель - 12 Января, 2018 - 12:47:59 - перейти к сообщению
Graf_Duku, проверяйте значение ключа error (вроде так он называется) в массиве $_FILES
3. Graf_Duku - 12 Января, 2018 - 13:23:16 - перейти к сообщению
Строитель пишет:
Graf_Duku, проверяйте значение ключа error (вроде так он называется) в массиве $_FILES
В том то и дело. Если попробовать прогрузить файл большего объема, то никакие значения из формы не передаются. По ощущениям страница просто обновляется и всё. Соответственно и массив $_FILES пустой.
С файлами в пределах ограничения - нет проблем.
4. Строитель - 12 Января, 2018 - 14:49:37 - перейти к сообщению
Graf_Duku, а в html-форме вы передаёте скрытым атрибутом максимально допустимое значение загружаемого файла? Посмотрите, как тут описано: MAX_FILE_SIZE
5. Graf_Duku - 12 Января, 2018 - 15:23:52 - перейти к сообщению
Строитель пишет:
Graf_Duku, а в html-форме вы передаёте скрытым атрибутом максимально допустимое значение загружаемого файла? Посмотрите, как тут описано: MAX_FILE_SIZE
И так пробовал, и другими извращенными способами. Результат один, форма обновляется и всё.
6. Строитель - 12 Января, 2018 - 15:27:24 - перейти к сообщению
Graf_Duku, на всякий случай не помешало бы опубликовать ваш код.
7. Graf_Duku - 12 Января, 2018 - 15:53:19 - перейти к сообщению
Строитель пишет:
Graf_Duku, на всякий случай не помешало бы опубликовать ваш код.
Код - тестовый, но и он работает с тем же результатом. Пробовал то же самое в голом файле, без .хтаецесса и каких либо инклудов, которые могу вызвать конфликты. БЕз результатов.
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- <?PHP
- }
- ?>
- <form action="" method="POST" name="add_doc-form" enctype="multipart/form-data">
- <fieldset>
- <legend>Загрузить новый документ в базу:</legend>
- <input type="hidden" name="MAX_FILE_SIZE" value="50000">
- <p><textarea name="add_doc-descrip" id="add_doc-descrip" rows="3"><?=$descrip_text?></textarea></p>
- <p class="pos_c"><input type="file" name="add_doc-file" id="add_doc-file"></p>
- <p class="pos_c"><input type="submit" value="Добавить"></p>
- </fieldset>
- </form>