后端code
创新新互联,凭借十载的成都网站设计、成都网站制作、外贸网站建设经验,本着真心·诚心服务的企业理念服务于成都中小企业设计网站有上千多家案例。做网站建设,选创新互联。
?php
class Upload{
private $filepath = './upload'; //上传目录
private $tmpPath; //PHP文件临时目录
private $blobNum; //第几个文件块
private $totalBlobNum; //文件块总数
private $fileName; //文件名
private $md5FileName;
public function __construct($tmpPath,$blobNum,$totalBlobNum,$fileName, $md5FileName){
$this-tmpPath = $tmpPath;
$this-blobNum = $blobNum;
$this-totalBlobNum = $totalBlobNum;
$this-fileName = $this-createName($fileName, $md5FileName);
$this-moveFile();
$this-fileMerge();
}
不需要后端的,前端自己判断,代码如下:
function uploadFile(){
// 获取上传文件,放到 formData对象里面
var pic = $("#myhead").get(0).files[0];
var formData = new FormData();
formData.append("file" , pic);
$.ajax({
type: "POST",
url: "upload",
data: formData ,//这里上传的数据使用了formData 对象
processData : false,
//必须false才会自动加上正确的Content-Type
contentType : false ,
//这里我们先拿到jQuery产生的 XMLHttpRequest对象,为其增加 progress 事件绑定,然后再返回交给ajax使用
xhr: function(){
var xhr = $.ajaxSettings.xhr();
if(onprogress xhr.upload) {
xhr.upload.addEventListener("progress" , onprogress, false);
return xhr;
}
}
});
一.准备HTML文件及其资源文件
使用UIWebView加载本地的HTML4文件 index.html,在index.html中引用了本地的图片、CSS文件、JS文件以及外部的图片。
二.加载本地HTML文件
将html5文件及相关资源添加到项目中,调用需要上传的文件夹。
三.选择调用的文件夹上传。
微信公众平台本身没有这个存储空间,所以就需要有个服务器或者第三方托管来承载制作好的html5页面;
1.通常微信都有第三方合作平台,直接调用第三方接口,然后将html5和页面素材统一打包上传到第三方服务端。
2.倘若有服务器空间,则直接将html5打包放在网站根目录文件下,在微信端直接调用服务器端的地址即可;
3.可以在微信平台通过文字或链接跳转的形式,实现html5页面的转换。
,首先要判断拖入的文件是否符合要求,包括图片类型、大小等,然后获取本地图片信息,实现预览,最后上传。
$(function(){
...接上部分
var box = document.getElementById('drop_area'); //拖拽区域
box.addEventListener("drop",function(e){
e.preventDefault(); //取消默认浏览器拖拽效果
var fileList = e.dataTransfer.files; //获取文件对象
//检测是否是拖拽文件到页面的操作
if(fileList.length == 0){
return false;
}
//检测文件是不是图片
if(fileList[0].type.indexOf('image') === -1){
alert("您拖的不是图片!");
return false;
}
//拖拉图片到浏览器,可以实现预览功能
var img = window.webkitURL.createObjectURL(fileList[0]);
var filename = fileList[0].name; //图片名称
var filesize = Math.floor((fileList[0].size)/1024);
if(filesize500){
alert("上传大小不能超过500K.");
return false;
}
var str = "img src='"+img+"'p图片名称:"+filename+"/pp大小:"+filesize+"KB/p";
$("#preview").html(str);
//上传
xhr = new XMLHttpRequest();
xhr.open("post", "upload.php", true);
xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");
var fd = new FormData();
fd.append('mypic', fileList[0]);
xhr.send(fd);
},false);
});