swfupload軟件特點(diǎn)
1.可以顯示上傳進(jìn)度
2.良好的瀏覽器兼容性
3.可以同時(shí)上傳多個(gè)文件
4.類似ajax的無刷新上傳
5.支持flash 8和flash 9
6.兼容其他java script庫 (例如:jquery, prototype等)
swfupload軟件功能
1.提供了豐富的事件接口供開發(fā)者使用
2.可以在瀏覽器端就對(duì)要上傳的文件進(jìn)行限制
3.用flash進(jìn)行上傳,頁面無刷新,且可自定義flash按鈕的樣式
4.允許一次上傳多個(gè)文件,但會(huì)有一個(gè)上傳隊(duì)列,隊(duì)列里文件的上傳是逐個(gè)進(jìn)行的,服務(wù)器端接收文件時(shí)跟普通的表單上傳文件是一樣的
swfupload快速入門
新增一個(gè)上傳頁面,我們放在swfu下,但不一定非要放在swfu下,命名為tutor-1.html。head中插入用于引入swfupload.js的代碼
然我我們還需要一個(gè)swfupload占位符和一個(gè)上傳按鈕。占位符用于當(dāng)swfupload載入并初始化后被swfupload按鈕替換的一個(gè)dom元素
接著,載入并初始化swfupload.swf。這樣,我們點(diǎn)擊“點(diǎn)我選擇文件”便可以上傳文件了,是不是so easy
swfupload更多參數(shù)
這里只提幾個(gè)額外經(jīng)常會(huì)用到的,一些邊邊角角的大家可以選擇去看漢化官方文檔
1.filedata,類似于表單上傳控件的name屬性,默認(rèn)值為filedata。這里不建議修改,因?yàn)樵趌inux下的flash,無論怎么修改這個(gè)值,都沒有效果
2.post_params, post值。連同上傳的文件一起提交到服務(wù)器上,這個(gè)東東也是比較有用的,比如可以驗(yàn)證用戶是否允許上傳文件等,另外可以用swfupload的 addpostparam/setpostparams/removepostparam/addfileparam/removefileparam方 法修改該值,通常在上傳文件額外還需要提交表單信息的時(shí)候會(huì)特別管用
3.requeue_on_error, 是否將上傳失敗的的文件重新添加到上傳隊(duì)列的頂端,默認(rèn)值為true。當(dāng)文件上傳失敗或者停止上傳觸發(fā)uploaderror事件,是否將上傳失敗的的文 件重新添加到上傳隊(duì)列的頂端,當(dāng)然調(diào)用cancelupload方法觸發(fā)uploaderror事件,不會(huì)將文件重新添加到上傳隊(duì)列中,而是會(huì)丟棄
4.file_types, 限制上傳的文件類型,這個(gè)是非常有用且重要的,默認(rèn)值為*.*。另外當(dāng)用戶指向上傳圖片時(shí)可以設(shè)置 為”*.jpg;*.jpeg;*.gif;*.png;*.bmp;”。另外有一點(diǎn)非常重要的就是,這里只是瀏覽器端限制了上傳的文件類型,服務(wù)端依然 要驗(yàn)證上傳的文件類型,否則可能是很危險(xiǎn)的
5.file_upload_limit,允許同時(shí)上傳文件的數(shù)量,默認(rèn)值為0,即不限制。當(dāng)文件隊(duì)列中的文件數(shù),正在上傳的文件以及已經(jīng)上傳成功的文件數(shù)只和超過了該值后,便不在允許添加文件
6.file_queue_limit,允許隊(duì)列存在的文件數(shù)量,默認(rèn)值為0,即不限制。當(dāng)文件隊(duì)列中的文件數(shù)超過該值便不再允許添加文件
7.button_action,點(diǎn)擊swfupload按鈕執(zhí)行的動(dòng)作,默認(rèn)值為swfupload.button_action.select_files(多文件上傳)
swfupload使用方法
1.首先引入相應(yīng)的js文件
2.實(shí)例化swfupload對(duì)象,傳入一個(gè)配置參數(shù)對(duì)象進(jìn)行各方面的配置
3.點(diǎn)擊swfupload提供的flash按鈕,彈出文件選取窗口選擇要上傳的文件
4.文件選取完成后符合規(guī)定的文件會(huì)被添加到上傳的隊(duì)列里
5.調(diào)用startupload方法讓隊(duì)列里文件開始上傳
6.文件上傳過程中會(huì)觸發(fā)相應(yīng)的事件,開發(fā)者利用這些事件來更新ui、處理錯(cuò)誤、發(fā)出提示等等
swfupload常見問題
所上傳的文件體積并未超出swfupload所設(shè)置的數(shù)值,但為何無法成功上傳
通常這是由于服務(wù)器端的限制所造成的,以apache+php為例,請(qǐng)修改php.ini中的post_max_size與upload_max_filesize兩項(xiàng)設(shè)置
在帶有session驗(yàn)證的網(wǎng)站后臺(tái)中swfupload無法正常工作
這是因?yàn)閟wfupload在上傳時(shí)相當(dāng)于重新開辟了一個(gè)新的session進(jìn)程,因此無法與原有程序的session保持一致,這就需要在上傳時(shí)傳遞原有程序的sessionid,根據(jù)它來“找回”其應(yīng)有的session
關(guān)于swfupload上傳中文文件名亂碼的問題
實(shí)際上是由于編碼的問題造成的,程序使用的utf-8,文件名傳遞時(shí)也是這種編碼,因此造成亂碼或文件不能保存,僅是需要修改接收文件,以php為例,upload.php中
這樣即可解決
swfupload更新日志
1.修復(fù)BUG,新版體驗(yàn)更佳
2.更改了部分頁面
華軍小編推薦:
swfupload軟件占用內(nèi)存小,性能穩(wěn)定,無任何捆綁,綠色安全,真正是一款良心軟件!本站還有聯(lián)想Filez、PDF編輯器 Abdio PDF Editor、魅客(PocoMaker)、點(diǎn)聚AIP通用文檔處理系統(tǒng)、FileLocator Pro,供您下載!
您的評(píng)論需要經(jīng)過審核才能顯示
有用
有用
有用