【问题标题】:$_FILES is empty$_FILES 为空
【发布时间】:2011-08-20 15:53:22
【问题描述】:

我正在使用Ajax file upload bt $_FILES 始终为空。

这是我的 php 页面

    include('../../inc/functions.php');
    $allowdExt = array("mp4","flv");
    $uploaddir = '../../uploads/videos/';
    $filename = basename($_FILES['uploadv']['name']);
    echo "file: $uploaddir".$filename ;
    exit;

        $extension = getExtension($filename);
        $extension = strtolower($extension);

        if(!in_array($extension,$allowdExt)){
            $errors =1;
        }
        else
        {
            $file_name = MakeRandomChars().'.'.$extension ;
            $newname=$uploaddir.$file_name;
            $copied = move_uploaded_file($_FILES['uploadv']['tmp_name'], $newname);
            if (!$copied)
            {
                $errors =1;
            }
        }

        if( $errors == 1){
            echo "0";
        }else{
            echo $file_name;
        }

这是我的 jquery 代码:

$(function(){
    var btnUpload=$('#uploadVideo');
    var status=$('#status');
    new AjaxUpload(btnUpload, {
        action: 'pages/upload-video.php',
        name: 'uploadv',
        onSubmit: function(file, ext){
             if (! (ext && /^(flv|mp4)$/.test(ext))){ 
                status.text('Only Flv,Mp4 files are allowed');
                return false;

            }
            $('#wait').fadeIn();
        },
        onComplete: function(file, response){
            status.text('');
            if(response != "0"){
                $('#wait').fadeOut();
                $('#videoIcon').fadeIn();
                $('#status').attr('video',response);
            }
        }
    });     
});

【问题讨论】:

  • 你怎么知道 $_FILES 是空的?你的 print_r 呢?

标签: php jquery ajax file-upload


【解决方案1】:

使用ajaxupload,您需要从原始 php 输入中获取数据,而不是从 $_FILES 中获取数据

您可以在此处查看示例:https://github.com/valums/file-uploader/blob/master/server/php.phpqqUploadedFileXhr 类)

【讨论】:

  • 感谢您的回答,但它在其他页面中对我有用 $_FILES 吗?
  • @T4mer: ajaxupload 通过原始输入而不是 $_FILES 传递文件。看看他们的自述文件github.com/valums/file-uploader:This plugin uses XHR for uploading multiple files with progress-bar...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-21
  • 1970-01-01
  • 2015-06-24
  • 2011-04-11
  • 1970-01-01
相关资源
最近更新 更多