Flex + Php 上传文件程序

    用HTML的方式来上传本机上的东西到服务器上是很简单的,但是用FLEX难吗?其实就比HTML难那么一点.当然在服务器上的PHP程序是一样的.懂PHP的就不用我说.不懂的,就看下面的PHP代码,别忘了放到服务器上.详细的PHP上载教程可以看 这里 by uyang www.uncoo.cn

文件名:uploadFile.php
<?php
$uploaddir = 'uploads/';
$uploadfile = $uploaddir . basename($_FILES['Filedata']['name']);
$temploadfile = $_FILES['Filedata']['tmp_name'];
move_uploaded_file($temploadfile , $uploadfile);
?>

   很简单的PHP程序. 下面就是FLEX程序代码: by uyang www.uncoo.cn

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="init();" backgroundGradientColors="[#ffffff, #c0c0c0]">
 <mx:Script>
   <![CDATA[
   
     private var urlRequest:URLRequest;
     private var fileReferenceList:FileReferenceList;
     private var serverSideScript:String = "http://路径/uploadFile.php";
   
     private function init():void {
       urlRequest = new URLRequest(serverSideScript);
       fileReferenceList = new FileReferenceList();
       fileReferenceList.addEventListener(Event.SELECT, fileSelectedHandler);
     }
     
     private function uploadFile():void {
       fileReferenceList.browse(getTypes());
     }
    
    public function getTypes():Array {
        var allTypes:Array = new Array();
        allTypes.push(getImageTypeFilter());
       allTypes.push(getTextTypeFilter());
        return allTypes;
    }
 
    private function getImageTypeFilter():FileFilter {
        return new FileFilter("Images (*.jpg, *.jpeg, *.gif, *.png)", "*.jpg;*.jpeg;*.gif;*.png");
    }
 
    private function getTextTypeFilter():FileFilter {
        return new FileFilter("Text Files (*.txt, *.rtf)", "*.txt;*.rtf");
    }
     private function fileSelectedHandler(event:Event):void {
       var fileReference:FileReference;
       var fileReferenceList:FileReferenceList = FileReferenceList(event.target);
       var fileList:Array = fileReferenceList.fileList;

         fileReference = FileReference(fileList[0]);
           
       fileReference.addEventListener(Event.COMPLETE, uploadCompleteHandler);
       fileReference.upload(urlRequest);
           
       statusText.text = "上传中...";
     }
     
     private function uploadCompleteHandler(event:Event):void {
       statusText.text = "上传成功的文件: " + event.target.name;
     }
     
   ]]>
 </mx:Script>
 
 <mx:Label text="用FLEX上传文件到PHP服务器"  fontSize="14" fontWeight="bold"/>
 <mx:Label text="选择要上传的文件" id="statusText" fontSize="12"/>
 <mx:Button click="uploadFile();" label="上传" fontSize="12"/>
 
</mx:Application>



     这是在ADOBE网站上的一个小教程,我觉得不错,就放自己BLOG上.PHP端我改了下.如果你想要多个上传或者加上上传进度条,也很方便.这里主要是FileReferenceList这个命令.有空多研究研究.

转自:http://www.uncool.cn/blogs/read.php?71

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

游鱼_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值