当前位置: 代码迷 >> Web前端 >> MultiPowUpload 多文件下传及使用方法
  详细解决方案

MultiPowUpload 多文件下传及使用方法

热度:173   发布时间:2012-10-28 09:54:44.0
MultiPowUpload 多文件上传及使用方法

rails 中要使用多文件上传的方案很多,最近搜到一个非常好的flash解决多文件上传的办法,而且用起来也非常简单,当然官网上有关于MultiPowUpload 的说明,但是它写的不够直接,而且没有对rails 支持。所以在此把使用步骤告诉大家:

1. 下载文档: http://www.element-it.com/multiple-file-upload/flash-uploader.aspx

?

下载之后文件目录如下:

?

/Documentation
/Extra
/FileProcessingScripts
/images
ElementITMultiPowUpload3.0.swf
styles.css
.....

?

复制以上几个文件夹到项目的public 文件中,其中images中的内容直接复制到images中即可,而 styles.css文件要放到stylesheets中。

?

2. 新建一个页面,在页面中写入以下代码:

<OBJECT id="MultiPowUpload" codeBase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=10,0,0,0" width="700" height="200" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" VIEWASTEXT>
	<PARAM NAME="FlashVars" VALUE="uploadUrl=<%= send_url %>&browseButton.text=Browse...&browseButton.tooltip=Add files for upload2">
	<PARAM NAME="BGColor" VALUE="#FFFFFF">
	<PARAM NAME="Movie" VALUE="ElementITMultiPowUpload3.0.swf">
	<PARAM NAME="AllowScriptAccess" VALUE="always">
	<PARAM NAME="SWLIVECONNECT" VALUE="true">
	<embed bgcolor="#FFFFFF" id="MultiPowUpload" name="MultiPowUpload" src="/ElementITMultiPowUpload3.0.swf" quality="high" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" allowscriptaccess="always" width="700" height="200" flashvars="uploadUrl=<%= send_url %>&redirectUploadUrl=<%= redirect_url %>&browseButton.text=Browse...&browseButton.tooltip=Add files for upload2">
	</embed>
	</OBJECT>

?其中send_url 就是你要发送到那个url中,redirect_url就是发送完成后跳转到那个页面。由于该flash是多文件上传同时还要显示进度条,外表上看是请求一次,实际上,一个文件请求一次,多个文件就请求多次,所以在你的controller的action 中不能跳转。

?

3. controller 接收到的数据如下:

{"fileCreationdate"=>"1281592578656",
 "Filename"=>"YSDH_3012.jpg",
 "fileId"=>"BF455077-6388-6269-D6DD-EE50FD54FB13",
 "rotateAngle"=>"0",
 "filesCount"=>"1",
 "action"=>"flash_uploads",
 "Upload"=>"Submit Query",
 "id"=>"3",
 "MultiPowUpload_browserCookie"=>
  "c_lang=zh; lp_auth=7318Y4a0wvuy%2BTX4cPnScX99crC95G1yeY%2BDWvauKVr6iLSpD%2FWQPqRarJtuaqzD
 "fileModificationDate"=>"1281592580390",
 "controller"=>"ajax_uploads",
 "rotateAngleBeforeCrop"=>"0",
 "currentFileIndex"=>"0",
 "fileSize"=>"208207",
 "Filedata"=>
  #<File:C:/DOCUME~1/kenny/LOCALS~1/Temp/RackMultipart20100915-3232-1gwsjdq-0>}
rd: 31.3ms)

?到此action中怎么写大家应该知道了,保存文件就可以了

具体效果图如下:

?



?


1 楼 yinchao1000 2011-06-03  
但是我想问,这个东西现在收费的哟,还挺贵的,有没有破解的可以学习下!