日期:2014-05-17  浏览次数:20463 次

Uploadify3.1上传5M以上文件显示成功,实际没上传成功
PHP Uploadify3.1上传4M多的可以上传成功,上传大点的,进度条和提示都显示成功,但实际文件没上传成功,调试环境IIS6
,可以确认路径没问题,操作应该也没问题,是不是uploadify本身不能上传大文件?还有没有其他好的上传大文件的PHP插件介绍。
JS代码如下
JScript code
$(function() {
        $('#file_upload').uploadify({
            'swf'      : 'uploadify.swf',
            'uploader' : 'uploadify.php',
            'buttonText':'上传',
            'auto'     : false,
            'height': 24,
            'width': 50,
            'cancelImage': 'uploadify-cancel.png',
            'checkExisting':'check-exists.php',
            'multi':false,
            'fileDataName': 'Filedata',
            'fileTypeDesc': 'FLV视频文件和图片文件',
            'fileTypeExts':'*.flv;*.jpg;*.iso',
            'onUploadError' : function(file,errorCode,errorMsg,errorString,swfuploadifyQueue){
                alert(errorMsg);//上传文件出错是触发(每个出错文件触发一次)
            },
            'onUploadSuccess':function(file,data,response){
              alert( 'id: ' + file.id+ ' - 索引: ' + file.index+ ' - 文件名: ' + file.name + ' - 文件大小: ' + file.size+ ' - 类型: ' + file.type+ ' - 创建日期: ' + file.creationdate+ ' - 修改日期: ' + file.modificationdate+ ' - 文件状态: ' + file.filestatus + ' - 服务器端消息: ' + data+ ' - 是否上传成功: ' + response);



            }
            // Your options here
        });
    });


PHP上传文件uploadify.php代码如下
PHP code
$targetFolder = '/uploads'; // Relative to the root

if (!empty($_FILES)) {
    $tempFile = $_FILES['Filedata']['tmp_name'];
    $targetPath = $_SERVER['DOCUMENT_ROOT'] . $targetFolder;
    $targetFile = rtrim($targetPath,'/') . '/' . $_FILES['Filedata']['name'];
    
    // Validate the file type
    $fileTypes = array('jpg','jpeg','gif','png','flv','iso'); // File extensions
    $fileParts = pathinfo($_FILES['Filedata']['name']);
    
    if (in_array($fileParts['extension'],$fileTypes)) {
        move_uploaded_file($tempFile,$targetFile);
        echo '1';
    } else {
        echo 'Invalid file type.';
    }
}




------解决方案--------------------
不是程序就是环境限制了上传大小
------解决方案--------------------
探讨

大哥可否说详细点 这个上传不上分块上传的吗?
如果不上分块的 估计肯定是上传不了的

------解决方案--------------------
if (!empty($_FILES)) {
if($_FILES['Filedata']['error'] != 0) die('错误号:' . $_FILES['Filedata']['error']);
$tempFile = $_FILES['Filedata']['tmp_name'];
....
------解决方案--------------------
php.ini设置max_post_size大于等于5m就行了