
這一個範例是由好友山羊所提供,而他寫了好幾個版本,目前梅干桑還在整理中,在整理的同時,先分享一篇簡易的檔案上傳方法, 由於山羊是搭配cfm,但一時之間突然找不到那隻程式,所以改由php來作介紹, 其實並不是直接利用Flex就可完成上傳的動作,這中間還需要搭配Server端的程式,如:cfm、php、asp、aspx…等, Flex只是將資料透過POST的方式丟出來,之後上傳的動作還是要靠Server端的程式來完成,由於該範例擁有上傳的功能,因此就沒提供線上範例供各位試用。
範例操作預覽:
FileUpload4Flex.mxml
private function uploadHandler():void{ this.FileBrowser.browse(); } //送出檔案 private function SendFile(event:Event):void{ var url:URLRequest = new URLRequest(“http://127.0.0.1/savefile.php”); event.target.upload(url,“Filedata”);//Filedata要與接收的.php或.aspx或.cmf中的名稱相同 } //上傳的進度表 private function UpLoadProgess(event:ProgressEvent):void{ this.progessbar.setProgress((event.bytesLoaded/event.bytesTotal)*100,100); } //當檔案上傳成功 private function UpLoadAccess():void{ Alert.show(“檔案上傳成功”); } //上傳失敗 private function UpLoadErr(event:IOErrorEvent):void{ Alert.show(“上傳失敗”,“IOError”); } ]]>
</mx:Script>
<net:FileReference id=“FileBrowser” select=“SendFile(event)” progress=“UpLoadProgess(event)” Complete=“UpLoadAccess()”/>
savefile.php
savefile.cfm
[範例下載]