Я могу загрузить другой файл без ошибок. Но всякий раз, когда я пытался загрузить файл RTF в PHP, это не удается. Мой код это ниже:
if(isset($_POST['pid'])){
if($_FILES['uploadname']['name']==''){
//Failed
}else{
//upload the file
}
}
HTML-форма:
<form method="post" enctype="multipart/form-data">
<input type="file" accept=".csv,.doc,.pdf,.docx,.xls,.xlsx,.rtf,.txt, image/*"name="uploadname" style="width:100%;">
<input type="hidden" name="pid" value="<?php echo $id; ?>">
<input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $max; ?>">
</form>
$ max = 62914560 байт
Я получил неопределенный индекс загрузки имени
Журнал сервера:
Предупреждение PHP: длина содержимого POST 24783980 байт превышает ограничение
8388608 байтов в Неизвестно в строке 0
Я загружаю тот же файл (сохранен в формате doc, используя msword) без проблем. Но когда дело доходит до РТФ, это терпит неудачу. Я могу без проблем загружать другие файлы, такие как doc, docx, xls, xlsx, pdf, txt и все файлы изображений.
В чем может быть проблема. Я использую PHP 7.1.19 Спасибо
Увидеть документация:
Скрытое поле MAX_FILE_SIZE (измеряется в байтах) должен предшествовать вводу файла поле, а его значение — максимальный размер файла, принятый PHP. Этот элемент формы всегда следует использовать, поскольку он избавляет пользователей от необходимости ждать передачи большого файла только для того, чтобы определить, что он слишком большой и передача не удалась. Имейте в виду: обмануть этот параметр на стороне браузера довольно просто, поэтому никогда не полагайтесь на файлы большего размера, блокируемые этой функцией. Это просто удобная функция для пользователей на стороне клиента приложения.
Вы положили это поле после ввод файла, поэтому он будет игнорироваться.
Однако настройки PHP (на стороне сервера) для максимального размера не могут быть обмануты.
… И похоже, что ваша конфигурация на стороне сервера в любом случае установлена на более низкое значение, так что вам нужно его увеличить.
Проверьте, имеет ли ваша HTML-форма enctype = «multipart / form-data».
Если в качестве имени файла указан тэг «uploadname».