上传是在WEB程序中比较常见的类型,作为WEB上传,由于PHP.ini配置限制,上传大小都不宜过大,一般在10M以内,在客户体验上就不适合单用HTTP方式上传了,在10M以上文件上传由于需要一定的等待时间,所以为了直观的体现上传文件大小 进度 所需时间等信息,则需要借助其他方法

在大文件上传上面,例如G级别的(300百兆以上)等文件,上传一般都是借助C 或者 其他语言写扩展或者插件完成,但这个预计成本会比价大,所在在200M以下的文件,采取FLASH+HTTP是比较合算的一种方式,在FLASH上传上,swfupload表现综合来说,相对优秀,下面来介绍下其配置情况:

首先其代码现在可以去 http://code.google.com/p/swfupload/  其官网为 http://www.swfupload.org/

(1) 下载完成后,我们只需要提取 swfupload.js(MINI压缩版本),fileprogress.js(负责进度),swfupload.queue.js(排队),handlers.js(负责处理协调上传)这个几个JS提取出来,然后 将 swf文件复制出来,以及相关的CSS images信息

(2)

在HTML中加载

代码

1 < link rel ="stylesheet" href ="swfup/css/swfupload.css" />
2   < script type ="text/javascript" src ="swfup/js/swfupload.js" ></ script >
3   < script type ="text/javascript" src ="swfup/js/swfupload.queue.js" ></ script >
4   < script type ="text/javascript" src ="swfup/js/fileprogress.js" ></ script >
5 < script type ="text/javascript" src ="swfup/js/handlers.js" ></ script >

(3) 加载JS配置

代码

1 < script type = " text/javascript " >
2 var swfu;
3 myjquery( function (){
4 var settings = {
5 flash_url : " swfup/swf/swfupload.swf " , // flash8地址
6 flash9_url : " swfup/swf/swfupload_fp9.swf " , // flash9地址
7
8 allowed_filetypes_description : " 允许上传格式... " , // 文件描述
9 upload_url: " upload.php " , // 上传文件(这个文件自己写,即普通的HTTP上传)
10 post_params: { " UID " : " $winduid " }, // 需要传送参数
11 file_size_limit : " 100 MB " , // 单文件上传大小
12 file_types : " *.txt,*.jpg " , // 上传允许格式
13 file_queue_limit : " 2 " , // 一次性上传队列个数
14 file_upload_limit : " 0 " , // 允许上传个数
15 /* * 以下为CSS控制 */ /
16 custom_settings : {
17 progressTarget : " fsUploadProgress " ,
18 cancelButtonId : " btnCancel "
19 },
20 debug: true ,
21 button_width: " 95 " ,
22 button_height: " 26 " ,
23 button_text_style: ' .button {font-family: Helvetica, Arial, sans-serif; font-size: 12px; border:0px; color:#FFFFFF} ' ,
24 button_image_url: " swfup/images/bg.jpg " ,
25 button_placeholder_id: " spanButtonPlaceHolder " ,
26 button_text: ' <span class="button">+选择上传文件</span> ' ,
27 button_text_top_padding: 0 ,
28 button_text_left_padding: 5 ,
29 button_window_mode: SWFUpload.WINDOW_MODE.TRANSPARENT,
30 button_cursor: SWFUpload.CURSOR.HAND,
31 swfupload_preload_handler : preLoad,
32 swfupload_load_failed_handler : loadFailed,
33 file_queued_handler : fileQueued,
34 file_queue_error_handler : fileQueueError,
35 upload_start_handler : uploadStart,
36 upload_progress_handler : uploadProgress,
37 upload_error_handler : uploadError,
38 upload_success_handler : uploadSuccess
39 };
40 swfu = new SWFUpload(settings);
41 });

(3)对于需要自己控制一些功能的话,可以对handlers.js进行修改

(4)重要的一点就是 如果upload.php需要存放在文件服务器上,上传则在需要的服务器上,假如2个服务器域名不一致,则需要在flash的根目录下加flash跨域解决文件,文件名为:crossdomain.xml

内容如下

1 <? xml version="1.0" ?>
2 < cross-domain-policy >
3 < allow-access-from domain ="*.允许域名" />
4 < allow-access-from domain ="*.允许域名" />
5 </ cross-domain-policy >

转载于:https://www.cnblogs.com/xyxiong/archive/2011/01/19/1939128.html

关于 swfupload 上传的一些总结相关推荐

  1. SWFUpload上传文件组件,跨域上传文件

    转自: http://zhaowenbinmail.blog.163.com/blog/static/3908086201042743942935/ 解决SWFUpload上传文件组件使用时报告204 ...

  2. 使用SWFUpload上传文件

    什么是SWFUpload SWFUpload是一个网站前端文件上传组件.SWFUpload通过flash+javascript,实现在不刷新网页的条件下,多个文件批量上传(实际上是逐个上传).以及显示 ...

  3. IE10不显示swfupload上传附件按钮问题

    IE11正常显示swfupload上传附件按钮,但是IE10不显示,遇到浏览器兼容问题,只需改swfupload.js文件中一些代码即可. 搜索寻找到 Private: getFlashHTML ge ...

  4. SWFUpload上传

    文章分类:Java编程 ★★★ 本篇为原创,需要引用转载的朋友请注明:< http://stephen830.javaeye.com/blog/255583 > 谢谢支持! ★★★ 功能完 ...

  5. SWFUpload上传指南

    SWFUpload是一个flash和js相结合而成的文件上传插件,其功能非常强大.以前在项目中用过几次,但它的配置参数太多了,用过后就忘记怎么用了,到以后要用时又得到官网上看它的文档,真是太烦了.所以 ...

  6. SWFupload上传插件案例及头像的截取

    记录一下这个上传插件的使用方法吧,以后项目中肯定会用到,到时候可以拿来用.一些属性什么的就不贴了. 流程: 1.引入相应的js文件 .这里还用了imgareaselect插件.代码中注释部分是未使用i ...

  7. 文件上传利器SWFUpload入门简易教程

    凡做过网站开发的都应该知道表单file的确鸡肋. Ajax解决了不刷新页面提交表单,但是却没有解决文件上传不刷新页面,当然也有其它技术让不刷新页面而提交文件,该技术主要是利用隐藏的iFrame, 较A ...

  8. Flash上传组件之SWFUpload文件上传

    2019独角兽企业重金招聘Python工程师标准>>> 一.什么是SWFUpload? SWFUpload是一个客户端文件上传工具,最初由Vinterwebb.se开发,它通过整合F ...

  9. Java 利用SWFUpload多文件上传 session 为空失效,不能验证的问题

    我们都知道普通的文件上传是通过表单进行文件上传的,还不能达到异步上传的目的.通过使用某些技术手段,比如jquery form.js可以达到异步上传的目的,但最重要的问题在于,它不能够进行多个文件的上传 ...

最新文章

  1. 新装myeclispse8.6GA、@Override出错
  2. hdu1009 - 贪心
  3. php远程下载头像,远程使用gravatar头像
  4. 电脑编程用户注册界面java_用JSP/Servlet开发简单的用户注册系统
  5. CSharp for Jupyter Notebook
  6. JAVA面试-HIBERNATE与 MYBATIS的对比
  7. 递归下降分析法的基本思想。_语法分析 | 递归下降分析算法
  8. 可怕!中国博士留学生在美国遭枪击身亡,北大毕业,已经读到了博士第四年...
  9. arduino如何驱动1602显示器?(使用arduino内置LiquidCrystal库)
  10. 音:Android音频系统之音频框架
  11. matlab 二维地图常用绘图函数用法(plot,fill,rectangle)
  12. 第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛 个人笔记 题解
  13. [生存志] 第21节 历代大事件概览 唐朝
  14. python并集符号_Python No.18_集合以及表示符号
  15. 服务器怎么防ddos攻击
  16. ffmpegguitool下载不了_FFmpeg GUI Tool下载-FFmpeg GUI Tool(视频处理)下载v1.2.4 安卓版-西西软件下载...
  17. 世界读书日:作为一个优秀的程序员请收藏这份书单
  18. CCF-20170902-公共钥匙盒(30分)
  19. cognos使用流程
  20. 学生个人博客网页设计作品 学生个人网页模板 个人网页制作 HTML学生个人网站作业设计

热门文章

  1. SitePoint首席执行官为慈善事业走了100公里
  2. html使页面崩溃,HTML5新特性Bug:这12行代码分分钟让你浏览器崩溃iPhone重启
  3. JS中的事件绑定、取消、兼容问题
  4. i386 和 x86-64 有什么区别?
  5. 北京Java培训班学费是多少?
  6. html 获取class的值,js获取class的所有元素
  7. mac开启root权限,mac root权限
  8. php graphviz,php graphviz
  9. 手机进水的处理方法 进水手机一样能够恢复如新
  10. 全网最全的Apollo教程从入门到精通