PHP这里我用的是YII框架,应该没什么影响
/*
Uploadify 后台处理方法
*/
public function actionuploadify(){
//设置上传目录
$path = "./uplode/video/";
//这里$_FILES为空
if (!empty($_FILES)) {
//得到上传的临时文件流
$tempFile = $_FILES['Filedata']['tmp_name'];
//允许的文件后缀
$fileTypes = array('avi','rmvb','mpg','wav');
//得到文件原名
$fileName = iconv("UTF-8","GB2312",$_FILES["Filedata"]["name"]);
$fileParts = pathinfo($_FILES['Filedata']['name']);
//接受动态传值
$files=$_POST['typeCode'];
//最后保存服务器地址
if(!is_dir($path))
mkdir($path);
//判断singerInfo文件是否存在且不为空
$this->getSingFile();
if (move_uploaded_file($tempFile, $path.$fileName)){
$myfile = explode(".",$fileName);
$sql = $this->getfile($myfile[0],1);
if ($sql){
//songandSinger文档插入
$songSingerFile = "./uplode/image/songSinger.txt";
$this->getSongFile($myfile[0],$songSingerFile,"dSongAndSinger","kSingerID");
//songandType文档插入
$songTypeFile = "./uplode/image/songType.txt";
$this->getSongFile($myfile[0],$songTypeFile,"dSongAndType","kSongTypeID");
//songandStyle文档插入
$songStyleFile = "./uplode/image/songStyle.txt";
$this->getSongFile($myfile[0],$songStyleFile,"dSongAndStyle","kSongStyleID");
echo $fileName."文件上传成功,数据上传成功!";
}else{
echo $fileName."文件上传成功,数据上传失败!";
}
//
}else{
echo $fileName."上传失败!";
}
}
}
下面是html代码,上传a标签
<a href="javascript:$('#file_upload').uploadify('settings', 'formData', {'typeCode':document.getElementById('id_file').value});$('#file_upload').uploadify('upload','*')">上传</a>
处理上传的js代码
<script type="text/javascript" src="<?php echo Yii::app()->request->baseUrl; ?>/js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="<?php echo Yii::app()->request->baseUrl; ?>/js/jquery.uploadify-3.1.min.js"></script>
<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->request->baseUrl; ?>/css/uploadify.css"/>
<script type="text/javascript">
var img_id_upload=new Array();//初始化数组,存储已经上传的图片名
var i=0;//初始化数组下标
$(function() {
$('#file_upload').uploadify({
'auto' : false,//关闭自动上传
'removeTimeout' : 600,//文件队列上传完成1秒后删除
'swf' : '<?php echo Yii::app()->request->baseUrl; ?>/js/uploadify.swf',
'uploader' : 'uploadify',//uploadify.php
'method' : 'post',//方法,服务端可以用$_POST数组获取数据
'buttonText' : '选择文件',//设置按钮文本
'multi' : true,//允许同时上传多张图片
'uploadLimit' : 10,//一次最多只允许上传10张图片
'fileTypeDesc' : 'Video Files',//只允许上传图像
'fileTypeExts' : '*.rmvb; *.mpg; *.wav',//限制允许上传的图片后缀
'fileSizeLimit' : '2GB',//限制上传的图片不得超过200KB
'onUploadSuccess' : function(file, data, response) {//每次成功上传后执行的回调函数,从服务端返回数据到前端
img_id_upload[i]=data;
i++;
alert(data);
// window.location.reload();
},
'onQueueComplete' : function(queueData) {
$("#result").html('');
//上传队列全部完成后执行的回调函数
// if(img_id_upload.length>0)
// alert('成功上传的文件有:'+encodeURIComponent(img_id_upload));
}
// Put your options here
});
});
</script>
------解决方案--------------------
$_FILES为空?
这是因为你的上传文件大于 php 设定的表单大小 post_max_size