Я пытаюсь загрузить файл .doc, .docx
через ajax, но он продолжает отправлять мне ошибку в моей консоли. Вот мой сценарий.Загрузить (.doc, .docx) файл в php с помощью ajax
var file = $('#file').val();
$(document).on('change','#file',function(){
var data = new FormData($("#fileinfo"));
$.each($('#file')[0].files, function(i, file) {
data.append('file-'+i, file);
});
console.log(FormData);
$.ajax({
url: "main-function.php?call=upload",
data: data,
cache: false,
contentType: false,
processData: false,
type: 'POST',
success: function(data){
console.log(data)
}
});
return false;
});
А вот main-function.php
:
if ($_FILES['file']['error'] !== UPLOAD_ERR_OK) {
die("Upload failed with error " . $_FILES['file']['error']);
}
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mime = finfo_file($finfo, $_FILES['file']['tmp_name']);
$ok = false;
$userid = $_SESSION['username'];
switch ($mime) {
case 'application/pdf':
case 'application/msword':
$ok = true;
move_uploaded_file($_FILES["file"]["tmp_name"],
"pds/" . $userid . '-' . time().'-' . $_FILES["file"]["name"]);
break;
default:
echo 'Type not supported';
}
Edit: Вот ошибка
<b>Notice</b>: Undefined index: file in <b>C:\xampp\htdocs\hrms\main\main-function.php</b> on line <b>9</b><br />
<b>Warning</b>: finfo_file() [<a href='function.finfo-file'>function.finfo-file</a>]: Empty filename or path in <b>C:\xampp\htdocs\hrms\main\main-function.php</b> on line <b>9</b><br />
Какую ошибку вы получаете? ok с другими типами файлов? – chanchal118
Что такое 'attr (« enctype »,« multipart/form-data »),'? И какая ошибка - это «отправка» на консоль? – meagar
См. Обновленный вопрос – leonardeveloper