from:http://www.alixixi.com/program/a/2008050731573.shtml

一直想搞这个功能, 想了很多歪门邪道, 未果!
昨天突然在 blueidea 上看到关于 Flash 8 的新特性 (虽然早就装上了 Flash 8 但一直没有仔细研究, 真是惭愧 :p) 中介绍了 flash 8 提供了上载和下载的接口, 马上下去研究了一下, 果然不错. 虽然上传还是需要后台脚本的支持, 但也足够我美上一阵子的了 :D
下面是研究成果, 不敢独享, 拿出来示众 :D
UploadFile.fla

CODE:
// 加载包
import flash.net.FileReference;
// 定义主角 FileReference 对象
var fileRef:FileReference = new FileReference();
// 定义 监听对象
var fileLsn:Object = new Object();
// 定义 文件类型数组 FileReference 对象的 browse 方法的参数
// description: 描述
// extension : 扩展名列表
var fileTyp:Array = new Array({description:"Image files", extension:"*.jpg;*.gif"}, {description:"Document files", extension:"*.txt;*.doc"});
btnBrowse.onRelease = function() {
// 打开 "选择文件" 对话框
fileRef.browse(fileTyp);
};
btnUpload.onRelease = function() {
// 开始上传
fileRef.upload("uploadFile.php");
};
btnClear.onRelease = function() {
strState.text = "";
};
// 选择文件事件
fileLsn.onSelect = function(file:FileReference) {
strState.text += "onSelect '"+file.name+"'/n";
};
// 取消选择
fileLsn.onCancel = function(file:FileReference) {
strState.text += "Cancel!/n";
};
// 打开文件开始上传
fileLsn.onOpen = function(file:FileReference) {
strState.text += "Uploading... '"+file.name+"'/n";
};
// 上传成功
fileLsn.onComplete = function(file:FileReference) {
strState.text += "File '"+file.name+"' upload successfull!/n";
};
// 上传过程
fileLsn.onProgress = function(file:FileReference, bytesLoaded:Number, bytesTotal:Number):Void {
strState.text += "onProgress: "+file.name+" with bytesLoaded: "+bytesLoaded+" bytesTotal: "+bytesTotal+"/n";
};
// HTTP 错误
fileLsn.onHTTPError = function(file:FileReference, httpError:Number) {
strState.text += "HTTP ERROR: "+httpError+"/n";
};
// IO 错误
fileLsn.onIOError = function(file:FileReference):Void {
strState.text += "IO Error: "+file.name+"/n";
};
// 安全错误
fileLsn.onSecurityError = function(file:FileReference, errorString:String):Void {
strState.text += "onSecurityError: "+file.name+" errorString: "+errorString;
};
// 绑定监听器
fileRef.addListener(fileLsn);
// 其他属性或事件请参考帮助中关于 FileReference 对象的章节

UploadFile.php

CODE:
<?php
// Flash 传递的文件表单 name 属性为 Filedata
$fileName = $_FILES["Filedata"]["name"];
$file = $_FILES["Filedata"]["tmp_name"];
$path = "uploadFiles/";
if (move_uploaded_file($file, $path . $fileName)){
// echo 1;
}else{
// echo 0;
}
/*
* 只要上传代码就够了
* Flash 似乎不判断该文件的返回值
* 即使该文件报告错 Flash 也无法分析
* 所以最好保证这个文件不会出错
*/
?>

flash,php上传文件相关推荐

  1. php flash上传进度条,PHP_PHP+FLASH实现上传文件进度条相关文件 下载,PHP之所以很难实现上传进度条 - phpStudy...

    PHP+FLASH实现上传文件进度条相关文件 下载 PHP之所以很难实现上传进度条是因为在我们上传文件到服务器的时候,要等到文件全部送到服务器之后,才执行相应的php文件.在这之前,文件数据保存在一个 ...

  2. 使用flash插件上传文件的方法--83.0火狐浏览器flash插件

    一. 下载对应系统的两个安装包         1.根据当前使用系统去下载安装包         2.windows 系统安装包下载链接:https://pan.baidu.com/s/1buqG-d ...

  3. 解决使用FireFox下Flash上传文件时SESSION丢失的问题(swfupload)

    解决使用FireFox下Flash上传文件时SESSION丢失的问题(swfupload) 这几天在项目中遇到的问题,稍微整理一下. HTML 表单是我们常用来进行浏览器与服务器数据交互的途径,除了传 ...

  4. Esp8266的Flash读写操作以及Flash上传文件

    1.Flash的读写操作 Esp8266的Flash为4M,其中1M用于存储程序,其他的空间有一部分用于系统,3M中剩下的大部分空间可以用来存放文件. #include <FS.h> St ...

  5. Flash中使用Filereference上传文件的一些注意事项

    FileReference用来上传文件,结合FileReferenceList使用,可以弹出一次文件选择框就上传很多个文件,比HTML form形式的友好很多.但是使用的时候,有些地方需要注意的: 上 ...

  6. Extjs 扩展Htmleditor,支持 图片上传 文件上传 插入flash 插入多媒体 插入层 插入横线等功能...

    去年对Extjs的富文本框编辑器htmleditor做过扩展,扩展成图片上传和文件上传功能,感觉功能还是不够,原文如下: http://hi.baidu.com/jackvoilet/blog/ite ...

  7. Extjs 扩展Htmleditor,支持 图片上传 文件上传 插入flash 插入多媒体 插入层 插入横线等功能

    最近在做项目的时候感觉还是不完美,于是在此基础上又进行了扩展,目前CJ_StarHtmlEditor支持: 图片上传 文件上传 插入flash 插入多媒体 插入层 插入横线等功能,基本上能够满足要求了 ...

  8. 通过Flash上传文件提示出错:onHTTPError

    通过Flash上传文件提示出错:onHTTPError 这种错误是因为此FLASH上传功能需要ASP.NET 2.0的支持,虽然服务器上默认都安装了ASP.NET 2.0,但需要在IIS里面选择当前网 ...

  9. 火狐浏览器获取flash上传文件的

    火狐浏览器获取flash上传文件的 火狐浏览器中flash上传获取不到. 主要是因为flash在火狐浏览器上传的过程中新建立了一个session 一个独立于浏览器的session.这里我们成为page ...

最新文章

  1. procexp.exe中文版---Process Explorer 进程监视V11.21中文版
  2. javascript常用排序算法总结
  3. 损失函数-经验风险最小化-结构风险最小化
  4. IDEA 点击进入方法内部_Idea中,听说会了Debug,你就离大佬不远了!
  5. 全球首款采用离心风扇/90Hz刷新率的电竞手机红魔3发布
  6. u盘启动 联想一体机_联想笔记本电脑怎么重装win10系统
  7. 网络层地址解析协议ARP
  8. python基础篇--从零开始(第一个程序)
  9. 电商后台管理系统-权限管理模块
  10. C#报错Newtonsoft.Json.JsonSerializationException: “A member with the name ‘phone‘ already
  11. GraphQL基金会宣布与联合开发基金会合作推动开源和开放标准
  12. LIO-SAM论文翻译
  13. 微信哪个电话能转人工服务器,如何联系微信人工客服?掌握好窍门,只需30秒可接通,亲测有效...
  14. 你不可不知的Java引用类型之——SoftReference源码详解
  15. 读书之后写笔记的软件哪个好
  16. php实现拼音转中文,PHP将中文转换成拼音的方法
  17. 动物视觉感知进化的一些看法
  18. python海龟库写名字
  19. 树莓和Arduino之间的蓝牙通讯
  20. Unity3D网络游戏《僵尸星球》

热门文章

  1. C语言 输入n,输出n各位数字之和
  2. JS 中 replace 和 replaceAll 的区别?
  3. 应用在电磁炉触控面板中的电容式触摸芯片
  4. office如何打开多个excel文件窗口
  5. FFmpeg提取视频(mp4)中的音频(m4a)
  6. 区块链 Fisco bcos 智能合约(22)-全面的性能分析工具
  7. 【深度域适配】一、DANN与梯度反转层(GRL)详解
  8. 长江水质的评价和预测——主要污染地区
  9. 「JCVI教程」如何基于物种的CDS的blast结果绘制点图(dotplot)
  10. 徐州市大数据管理中心市级政务云灾备服务