php+uploadify多文件上传实例

注意:上传不成功返回302错误极有可能是因为php中有session权限的判断,调试方可解决
Jquery.uploadify插件,今天网友Wind把自己做的例子分享出来了,支持批量和文件等待上传,大家好好利用哦。最后提供了打包下载
uploadify.php文件代码如下:
 
<?php

 
//设置上传目录
$path = "uploads/";  
 
if (!empty($_FILES)) {
 
    //得到上传的临时文件流
    $tempFile = $_FILES['Filedata']['tmp_name'];
 
    //允许的文件后缀
    $fileTypes = array('jpg','jpeg','gif','png');
 
    //得到文件原名
    $fileName = iconv("UTF-8","GB2312",$_FILES["Filedata"]["name"]);
    $fileParts = pathinfo($_FILES['Filedata']['name']);
 
    //接受动态传值
    $files=$_POST['typeCode'];
 
    //最后保存服务器地址
    if(!is_dir($path))
       mkdir($path);
    if (move_uploaded_file($tempFile, $path.$fileName)){
        echo $fileName."上传成功!";
    }else{
        echo $fileName."上传失败!";
    }
}
?>
来源: < http://www.jq-school.com/Show.aspx?id=209 >
 
index.php文件主要代码如下:
 
 
var img_id_upload=new Array();//初始化数组,存储已经上传的图片名
var i=0;//初始化数组下标
 
 
//解决uploadfiy的上传bug
//tp的主入口index.php文件加入
//解决uploadify在火狐下session_id丢失的问题
//if (isset($_POST['session_id'])) {
//  session_id($_POST['session_id']);
//}
var session_id = $(":hidden[name='session_id']").val();
 
 
$(function() {
    $('#file_upload').uploadify({
        'auto'     : true,//关闭自动上传
        'removeTimeout' : 1,//文件队列上传完成1秒后删除
        'swf'      : '/Public/uploadfiy/uploadify.swf',
        'uploader' : '/Dangan/uploadfiy',
        'formData': {session_id: session_id}, //解决uploadfiy的上传bug
        'method'   : 'post',//方法,服务端可以用$_POST数组获取数据
        'buttonText' : '选择录音文件',//设置按钮文本
        'multi'    : true,//允许同时上传多张图片
        'uploadLimit' : 5,//一次最多只允许上传10张图片
        'fileTypeDesc' : 'MP3 Files; WMA Files',//只允许上传图像
        'fileTypeExts' : '*.mp3; *.wma;',//限制允许上传的图片后缀
        'fileSizeLimit' : '102400KB',//限制上传的图片不得超过200KB
         //'buttonImage':'/Public/uploadfiy/uploadify.jpg',
        //浏览按钮的宽度
        'width':'100',
        //浏览按钮的高度
        'height':'32',
        'onUploadSuccess' : function(file, data, response) {//每次成功上传后执行的回调函数,从服务端返回数据到前端
               //解析返回值
               var data = $.parseJSON(data);
 
               img_id_upload[i]=data;
               i++;
 
               //上传成功值隐藏到表单
               var luyin = $('#luyin').val();
               new_luyin = data.name+':'+data.path+','+luyin;
               $('#luyin').val(new_luyin);
 
               //显示上传成功文件
               var tisi = $('#span_luyin').html();
               new_tisi = '已成功上传:'+data.name+'<br />'+tisi;
               $('#span_luyin').html(new_tisi);
               //console.log(data);
        },
        'onQueueComplete' : function(queueData) {//上传队列全部完成后执行的回调函数
           // if(img_id_upload.length>0)
           // alert('成功上传的文件有:'+encodeURIComponent(img_id_upload));
        }
        // Put your options here
    });
});