html5php上传,html5+php如何实现ajax上传文件

html5+php如何实现ajax上传文件

【html5代码部分】

html5 基于拖拽的文件上传

/*外部刨削样式*/

.wrapper{border: 0px solid red; width: 600px; height: 500px; margin: 0px auto;}

/*文件图片拖拽区 样式*/

.drag_Box{ border: 1px solid blue; width: 100%; height: 450px;}

/*显示进度条样式*/

.progress_Bar{border: 1px solid #256842;width: 100%; height: 48px;}

【mydemo.js js代码部分】

/**

* @author Administrator

* 1-- 找到对象

* 2-- 需要html 的拖拽api 和  fromFate Api

*

* 创建对象后给对象动态添加拖进事件

*

*

*/

window.onload = function() {

var oDropBox = document.getElementById('dropBox');

//拖进事件

oDropBox.addEventListener('dragover', function(e) {

e.preventDefault();

oDropBox.style.border="1px solid red";

}, false);

//扔完后事件

oDropBox.addEventListener('drop', handleDrop, false);

function handleDrop(e) {

e.preventDefault();

var fileList  = e.dataTransfer.files;  //获取拖拽文件

fileType = fileList[0].type;

oImg = document.createElement('img');

oup= document.createElement('button');

oup.setAttribute('type','button');

oup.innerHTML="上传";

oup.addEventListener('click',upload,false);

reader = new FileReader();

reader.onload = function(e){

oImg.src = this.result;

oDropBox.innerHTML = '';

oDropBox.appendChild(oImg);

oDropBox.appendChild(oup);

}

reader.readAsDataURL(fileList[0]);

//当点击的时候上传按钮的时候就执行 ajax 开始上传

function upload(){

//问题在这个位置

//测试: 当点击上传按钮时,已经执行了该方法。问题是: ajax 文件上传没有吧formData中的数据上传到服务器

var xhr = new XMLHttpRequest();

var fd  = new FormData();

xhr.open('POST', 'http://127.0.0.1/html5_uload_demo/upload.php?'+Math.random(), true);

xhr.setRequestHeader("X-Requested-With","XMLHttpHequest");

xhr.setRequestHeader("content-length",fileList[0].size);

xhr.onreadystatechange=_callback;

fd.append('file',fileList[0]);

xhr.send(fd);

}

function _callback(){

if(xhr.readyState == 4 && xhr.status == 200){

alert('dd');

alert(xhr.responseText);

}

}

}

}

【upload.php php代码部分】

// 执行上传     if($_FILES['file']['error']==0){          $uploadFileName=$_FILES['file']['name'];          $uploadFileTemp=$_FILES['file']['tmp_name'];          $uploadFileTrue='/html5_uload_demo/upload/';          move_uploaded_file($uploadFileTemp,$uploadFileTrue.$uploadFileName);      }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值