修改php配置文件(php.ini),改变文件上传大小
配置项 post_max_size =1024M
upload_max_filesize =1024M
多文件上传
form表单中添加多个input[type='file']标签
或
加上multiple = 'multiple'属性
多文件无刷新上传(ajax)
<input type='file' id='file' name='file[]' multiple = 'multiple'>
//上传按钮改为button,给点击事件
<button onclick='upload()'>多文件上传</button>
//js
<script>
function upload() {
var xhr=new XMLHttpRequest();//第一步
//新建一个FormData对象
var formData=new FormData();//++++++++++
//获取id=file文件
var newfile=document.getElementById('file').files;
// console.log(newfile);
// return;
//追加文件数据
// formData.append('file', newfile);单个文件
for(i=0;i<newfile.length;i++){
formData.append("file["+i+"]",newfile[i]);//++++++++++
}
//post方式
xhr.open('POST','upload.php');//第二步骤
//发送请求
xhr.send(formData);//第三步骤
//ajax返回
xhr.onreadystatechange=function(){//第四步
if(xhr.readyState==4&&xhr.status==200) {
console.log(xhr.responseText);
}
};
//设置超时时间
xhr.timeout=10000;
xhr.ontimeout=function(event){
alert('请求超时!');
}
}
//php文件
/**
* 文件上传保存
*/
print_r($_FILES);
for($i=0;$i<count($_FILES["file"]['name']);$i++){
$name=$_FILES["file"]["name"][$i];
move_uploaded_file($_FILES["file"]["tmp_name"][$i],iconv("UTF-8","gb2312",$name));
}
网友评论