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:风雨欲来 路在何方?
Oct 09 PHP
PHP文本数据库的搜索方法
Oct 09 PHP
php5新改动之短标记启用方法
Sep 11 PHP
PHP教程 基本语法
Oct 23 PHP
php 无限级分类,超级简单的无限级分类,支持输出树状图
Jun 29 PHP
浅析PHP文件下载原理
Dec 25 PHP
PHP处理postfix邮件内容的方法
Jun 16 PHP
作为程序员必知的16个最佳PHP库
Dec 09 PHP
在WordPress中使用wp_count_posts函数来统计文章数量
Jan 05 PHP
PHP数组生成XML格式数据的封装类实例
Nov 10 PHP
Laravel框架Blade模板简介及模板继承用法分析
Dec 03 PHP
Laravel 验证码认证学习记录小结
Dec 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 error_log 函数的使用
2009/04/13 PHP
PHP远程调试之XDEBUG
2015/12/29 PHP
浅析PHP中json_encode与json_decode的区别
2020/07/15 PHP
TNC vs BOOM BO3 第三场2.13
2021/03/10 DOTA
JS可以控制样式的名称写法一览
2014/01/16 Javascript
Jquery 返回json数据在IE浏览器中提示下载的问题
2014/05/18 Javascript
js在数组中删除重复的元素自保留一个(两种实现思路)
2014/08/22 Javascript
DOM节点删除函数removeChild()用法实例
2015/01/12 Javascript
jQueryMobile之Helloworld与页面切换的方法
2015/02/04 Javascript
详解JavaScript中的blink()方法的使用
2015/06/08 Javascript
JavaScript事件学习小结(一)事件流
2016/06/09 Javascript
JavaScript中的一些实用小技巧总结
2019/04/07 Javascript
vue+axios实现post文件下载
2019/09/25 Javascript
VUE单页面切换动画代码(全网最好的切换效果)
2019/10/31 Javascript
Vue基础配置讲解
2019/11/29 Javascript
Js视频播放器插件Video.js使用方法详解
2020/02/04 Javascript
Vue 基于 vuedraggable 实现选中、拖拽、排序效果
2020/05/18 Javascript
[04:02]2014DOTA2国际邀请赛 BBC每日综述中国战队将再度登顶
2014/07/21 DOTA
python杀死一个线程的方法
2015/09/06 Python
Python3实战之爬虫抓取网易云音乐的热门评论
2017/10/09 Python
Python如何生成树形图案
2018/01/03 Python
Python3爬虫全国地址信息
2019/01/05 Python
python批量解压zip文件的方法
2019/08/20 Python
Python读取实时数据流示例
2019/12/02 Python
Python任务调度模块APScheduler使用
2020/04/15 Python
Windows环境下Python3.6.8 importError: DLLload failed:找不到指定的模块
2020/11/01 Python
罗技美国官网:Logitech美国
2020/01/22 全球购物
资产评估专业学生的自我鉴定
2013/11/14 职场文书
大学生的网上创业计划书
2013/12/31 职场文书
幼儿园教学管理制度
2014/02/04 职场文书
质量月活动策划方案
2014/03/10 职场文书
安全标语大全
2014/06/10 职场文书
行政诉讼答辩状
2015/05/21 职场文书
详解SQL的窗口函数
2022/04/21 Oracle
SQL Server #{}可以防止SQL注入
2022/05/11 SQL Server
HTML中link标签属性的具体用法
2023/05/07 HTML / CSS