2013-05-28 3 views
0

Я использую $_FILES['Filedata']['type'], чтобы получить тип файла, но он дает "application/octet-stream" для каждого загружаемого файла (например, .jpg/.pdf/.txt и т. Д.).загрузить jquery - присвоить неверный тип загруженного файла

Может ли кто-нибудь помочь мне в этом?

<form> 
    <div id="queue"></div> 
    <input id="file_upload" name="file_upload" type="file" multiple="true"> 
</form> 

<script type="text/javascript"> 
$(function() { 
    $('#file_upload').uploadify({ 
     'auto' :true, 
     'multi':true, 
     'swf'  : 'uploadify.swf', 
     'uploader' : 'uploadify.php', 
     'method' : 'post', 
     'formData':{'token':'xyz'}, 
     'onUploadSuccess' : function(file, data, response) { 
      alert(data); }   
    }); 
}); 
</script> 

uploadify.php

$targetFolder = 'uploads'; 
$verifyToken = $_POST['token']; 
if (!empty($_FILES) && $_POST['token'] == $verifyToken) { 
    echo $_FILES['Filedata']['type']; 
    $tempFile = $_FILES['Filedata']['tmp_name']; 
    $targetPath = $targetFolder; 
    $targetFile = rtrim($targetPath,'/').'/'.$_FILES['Filedata']['name']; 
    if (move_uploaded_file($tempFile,$targetFile)) { 
     echo 'Copied successfully'; 
    } 
} 

Спасибо за любую помощь.

ответ

0

Поскольку у вас есть файл ввода, который имеет имя «file_upload», попробуйте изменить $_FILES['Filedata']['type'] на $_FILES['file_upload']['type'], потому что первым индексом должно быть имя объекта.

Смежные вопросы