解析php+ajax实现无刷新文件上传功能

本文实例为大家分享了php+ajax实现无刷新文件上传的具体代码,供大家参考,具体内容如下:

文件上传的表单格式

AjaxFileUpload实现文件异步上传效果更好,使用简单:

jQuery(function(){

$("#buttonUpload").click(function(){

//加载图标

/*$("#loading").ajaxStart(function(){

$(this).show();

}).ajaxComplete(function(){

$(this).hide();

});*/

//上传文件

$.ajaxFileUpload({

url:'upload.php',//处理图片脚本

secureuri:false,

fileElementId:'fileToUpload',//file控件id

dataType:'json',

success:function(data,status){

if(typeof(data.error)!='undefined'){

if(data.error!=''){

alert(data.error);

}else{

alert(data.msg);

}

}

},

error:function(data,status,e){

alert(e);

}

})

returnfalse;

})

})

上传

上传还可以传递参数:

vardata=

$.ajaxFileUpload({

url:'upload.php',

secureuri:false,

data:data,

fileElementId:'fileToUpload',

dataType:'json',

success:function(data){

alert(data.msg);

},

error:function(data){

alert("error");

}

});

主要参数说明:

1、url表示处理文件上传操作的文件路径,可以测试URL是否能在浏览器中直接访问,如上:upload.php

2、fileElementId表示文件域ID,如上:fileToUpload

3、secureuri是否启用安全提交,默认为false

4、dataType数据数据,一般选json,javascript的原生态

5、success提交成功后处理函数

6、error提交失败处理函数

需要了解相关的错误提示

1、SyntaxError:missing;beforestatement错误

如果出现这个错误就需要检查url路径是否可以访问

2,SyntaxError:syntaxerror错误

如果出现这个错误就需要检查处理提交操作的PHP文件是否存在语法错误

3、SyntaxError:invalidpropertyid错误

如果出现这个错误就需要检查属性ID是否存在

4、SyntaxError:missing}inXMLexpression错误

如果出现这个错误就需要检查文件域名称是否一致或不存在

5、其它自定义错误

大家可使用变量$error直接打印的方法检查各参数是否正确,比起上面这些无效的错误提示还是方便很多。

以上就是本文的全部内容,希望对大家的学习有所帮助。

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20180314A0PBAN00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券