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核心代码分析require和include的区别
Jan 02 PHP
php之CodeIgniter学习笔记
Jun 17 PHP
php利用curl抓取新浪微博内容示例
Apr 27 PHP
php基于str_pad实现卡号不足位数自动补0的方法
Nov 12 PHP
php函数实现判断是否移动端访问
Mar 03 PHP
php压缩和解压缩字符串的方法
Mar 14 PHP
PHP SPL标准库之接口(Interface)详解
May 11 PHP
PHP中的traits简单使用实例
May 13 PHP
Linux系统下使用XHProf和XHGui分析PHP运行性能
Dec 08 PHP
PHP编程基本语法快速入门手册
Jan 07 PHP
php文件上传、下载和删除示例
Aug 28 PHP
Linux下 php7安装redis的方法
Nov 01 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中使用exec,system等函数调用系统命令的方法(不建议使用,可导致安全问题)
2012/09/07 PHP
Windows2003下php5.4安装配置教程(Apache2.4)
2016/06/30 PHP
php 计算两个时间相差的天数、小时数、分钟数、秒数详解及实例代码
2016/11/09 PHP
PHP实现的简单对称加密与解密方法实例小结
2017/08/28 PHP
如何在PHP环境中使用ProtoBuf数据格式
2020/06/19 PHP
javascript日期转换 时间戳转日期格式
2011/11/05 Javascript
深入理解javascript动态插入技术
2013/11/12 Javascript
jquery删除指定的html标签并保留标签内文本内容的方法
2014/04/02 Javascript
js识别不同浏览器基于userAgent做判断
2014/07/29 Javascript
jQuery实现带渐显效果的人物多级关系图代码
2015/10/16 Javascript
JS显示日历和天气的方法
2016/03/01 Javascript
全面解析JS字符串和正则表达式中的match、replace、exec等函数
2016/07/01 Javascript
JQuery控制DIV的选取实现方法
2016/09/18 Javascript
js正则表达式验证密码强度【推荐】
2017/03/03 Javascript
解决linux下node.js全局模块找不到的问题
2018/05/15 Javascript
详解JSON和JSONP劫持以及解决方法
2019/03/08 Javascript
vue路由缓存的几种实现方式小结
2020/02/02 Javascript
js+canvas实现转盘效果(两个版本)
2020/09/13 Javascript
使用Python获取CPU、内存和硬盘等windowns系统信息的2个例子
2014/04/15 Python
matplotlib中legend位置调整解析
2017/12/19 Python
Python subprocess模块常见用法分析
2018/06/12 Python
使用NumPy和pandas对CSV文件进行写操作的实例
2018/06/14 Python
关于python中plt.hist参数的使用详解
2019/11/28 Python
python实现简单井字棋游戏
2020/03/04 Python
JBL加拿大官方商店:扬声器、耳机等
2020/10/23 全球购物
解释一下Windows的消息机制
2014/01/30 面试题
什么是虚拟内存?虚拟内存有什么优势?
2016/02/09 面试题
银行金融服务方案
2014/06/11 职场文书
离职信范本
2015/06/23 职场文书
催款函范本大全
2015/06/24 职场文书
2016年小学优秀班主任事迹材料
2016/02/29 职场文书
八年级作文之一起的走过日子
2019/09/17 职场文书
2020年基层司法所建设情况调研报告
2019/11/30 职场文书
Rhit高效可视化Nginx日志查看工具
2021/11/01 Servers
Python函数对象与闭包函数
2022/04/13 Python
Python开发简易五子棋小游戏
2022/05/02 Python