@accountnujen

Как обработать php ошибки на клиенте, если доступа к php.ini нет?

Если через форму отправить файл больше, чем указано в upload_max_filesize и post_max_size, то php выдаст
<br />
<b>Warning</b>:  POST Content-Length of 71000687 bytes exceeds the limit of 52428800 bytes in <b>Unknown</b> on line <b>0</b><br />

Разумеется клиентский обработчик ошибок не готов к этому, поэтому хочется как-то организовать нормальное отображение таких ошибок.
Забавно, что из php нельзя отключить отображение ошибок через ini_set("display_errors", false);, чтобы потом в ручную посчитать вес и отправить нормальный ответ пользователю. Как можно заметить, ошибка вылетает на строке 0, то есть она наступает до всех параметров и только путём исправления php.ini можно добиться отключения её отображения. Вот хотелось бы мне заблуждаться и увидеть от вас решение данной проблемы
  • Вопрос задан
  • 163 просмотра
Пригласить эксперта
Ответы на вопрос 2
Adamos
@Adamos
<script>
function checkFileSize(){
  if(document.getElementById('fileInput').files[0].size > 52428800) {
    alert('Не пролезет!');
  }
}
</script>

<input id="fileInput" type="file" onchange="checkFileSize();" />
Ответ написан
Комментировать
@Alexey_Neonov
В начало php скрипта вставить:
ini_set('display_errors', '1');
ini_set('display_startup_errors', '1');
error_reporting(E_ALL);
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы