php+ajax实现无刷新文件上传功能(ajaxuploadfile)


Posted in PHP onFebruary 11, 2018

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

文件上传的表单格式

<form id="uploadform" enctype="multipart/form-data" name="uploadform" method="post" >
  <input id="fileToUpload" type="file" name="fileToUpload" class="uploadinput" >
  <input id="add_file" type="button" value="提交">
</form>

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

<!DOCTYPE html>
 <html>
  <head>
   <title></title>
   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
   <script type="text/javascript" src="http://www.phpddt.com/usr/themes/dddefault/jquery-1.4.2.min.js"></script>
   <script type="text/javascript" src="ajaxfileupload.js"></script>
  </head>
 <script>
 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);
   }
 })
 return false;
  }) 
 })
 </script>
  <body>
   <input id="fileToUpload" type="file" size="20" name="fileToUpload" class="input">
   <button id="buttonUpload">上传</button>
  </body>
 </html>

上传还可以传递参数:

var data = { name: 'my name', description: 'short description' } 
  $.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 ; before statement错误

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

2,SyntaxError: syntax error错误

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

3、SyntaxError: invalid property id错误

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

4、SyntaxError: missing } in XML expression错误

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

5、其它自定义错误

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP 和 XML: 使用expat函数(二)
Oct 09 PHP
PHP file_get_contents 函数超时的几种解决方法
Jul 30 PHP
PHP中10个不常见却非常有用的函数
Mar 21 PHP
php中获取远程客户端的真实ip地址的方法
Aug 03 PHP
php数组函数序列之array_key_exists() - 查找数组键名是否存在
Oct 29 PHP
浅谈json_encode用法
Mar 05 PHP
如何使用Gitblog和Markdown建自己的博客
Jul 31 PHP
thinkPHP删除前弹出确认框的简单实现方法
May 16 PHP
浅谈PHP eval()函数定义和用法
Jun 21 PHP
PHP AjaxForm提交图片上传并显示图片源码
Nov 29 PHP
PHP实现Unicode编码相互转换的方法示例
Nov 17 PHP
PHP文件管理之实现网盘及压缩包的功能操作
Sep 20 PHP
PHP实现的多维数组排序算法分析
Feb 10 #PHP
ThinkPHP整合datatables实现服务端分页的示例代码
Feb 10 #PHP
PHP实现APP微信支付的实例讲解
Feb 10 #PHP
PHP有序表查找之插值查找算法示例
Feb 10 #PHP
PHP有序表查找之二分查找(折半查找)算法示例
Feb 09 #PHP
php在windows环境下获得cpu内存实时使用率(推荐)
Feb 08 #PHP
PHP基于redis计数器类定义与用法示例
Feb 08 #PHP
You might like
php中拷贝构造函数、赋值运算符重载
2012/07/25 PHP
JoshChen_php新手进阶高手不可或缺的规范介绍
2013/08/16 PHP
php使用ob_start()实现图片存入变量的方法
2014/11/14 PHP
Yii核心验证器api详解
2016/11/23 PHP
讲两件事:1.this指针的用法小探. 2.ie的attachEvent和firefox的addEventListener在事件处理上的区别
2007/04/12 Javascript
6个DIV 135或246间隔一秒轮番显示效果
2010/07/24 Javascript
JS实现悬浮移动窗口(悬浮广告)的特效
2013/03/12 Javascript
JS简单实现登陆验证附效果图
2013/11/19 Javascript
BAT及各大互联网公司2014前端笔试面试题--JavaScript篇
2014/10/29 Javascript
javascript中setTimeout和setInterval的unref()和ref()用法示例
2014/11/26 Javascript
NodeJS与HTML5相结合实现拖拽多个文件上传到服务器的实现方法
2016/07/26 NodeJs
JS传参及动态修改页面布局
2017/04/13 Javascript
layui之select的option叠加问题的解决方法
2018/03/08 Javascript
Vue常用指令详解分析
2018/08/19 Javascript
vue 对象添加或删除成员时无法实时更新的解决方法
2019/05/01 Javascript
Nodejs实现WebSocket代码实例
2020/05/19 NodeJs
Python datetime时间格式化去掉前导0
2014/07/31 Python
Python 字典dict使用介绍
2014/11/30 Python
Python的批量远程管理和部署工具Fabric用法实例
2015/01/23 Python
python实现矩阵乘法的方法
2015/06/28 Python
基于Python的XSS测试工具XSStrike使用方法
2017/07/29 Python
Python之批量创建文件的实例讲解
2018/05/10 Python
python使用Matplotlib画条形图
2020/03/25 Python
对python 多个分隔符split 的实例详解
2018/12/20 Python
python实现多层感知器
2019/01/18 Python
Python操作MySQL数据库的两种方式实例分析【pymysql和pandas】
2019/03/18 Python
Python完全识别验证码自动登录实例详解
2019/11/24 Python
Python3.9 beta2版本发布了,看看这7个新的PEP都是什么
2020/06/10 Python
详解canvas绘图时遇到的跨域问题
2018/03/22 HTML / CSS
canvas生成带二维码海报的踩坑记录
2019/09/11 HTML / CSS
英国在线珠宝店:The Jewel Hut
2017/03/20 全球购物
Saucony澳大利亚官网:美国跑鞋品牌,运动鞋中的劳斯莱斯
2018/05/05 全球购物
罗马尼亚购物网站:Vivantis.ro
2019/07/20 全球购物
校长创先争优承诺书
2014/08/30 职场文书
2015年教师师德师风承诺书
2015/04/28 职场文书
postman中form-data、x-www-form-urlencoded、raw、binary的区别介绍
2022/01/18 HTML / CSS