当前位置:Gxlcms > PHP教程 > Flex+PHP实现上传图片|Flex+PHPRealizationpictureuploading

Flex+PHP实现上传图片|Flex+PHPRealizationpictureuploading

时间:2021-07-01 10:21:17 帮助过:16人阅读

1 Flex代码



import flash.net.FileReference;
import mx.controls.Alert;
import mx.events.CloseEvent;
import flash.events.*;
private var file : FileReference;
private var uploadURL : URLRequest;
private function init() : void{
Security.allowDomain("*");
file = new FileReference();
file.addEventListener(ProgressEvent.PROGRESS, onProgress);
file.addEventListener(DataEvent.UPLOAD_COMPLETE_DATA,onUPLOAD_COMPLETE_DATA);
file.addEventListener(Event.SELECT, onSelect);
uploadURL = new URLRequest();
uploadURL.url = "http://localhost:80/ShowProduct-debug/uploadFile.php";
uploadURL.method = "post";
}
private function upload() : void{
var imageTypes:FileFilter = new FileFilter("Images (*.jpg, *.jpeg, *.gif, *.png)", "*.jpg; *.jpeg; *.gif; *.png");
var allTypes:Array = new Array(imageTypes);
file.browse(allTypes);
}
private function onSelect(e : Event) : void{
Alert.show("上传 " + file.name + " (共 "+Math.round(file.size)+" 字节)?", "确认上传",Alert.YES|Alert.NO,null,proceedWithUpload);
}
private function onProgress(e:ProgressEvent) : void{
lbProgress.text = " 已上传 " + e.bytesLoaded + " 字节,共 " + e.bytesTotal + " 字节";
}
private function proceedWithUpload(e : CloseEvent) : void{
if (e.detail == Alert.YES){
file.upload(uploadURL);
}
}
private function onUPLOAD_COMPLETE_DATA(evt:DataEvent):void
{
Alert.show(evt.data.toString());
}
]]>







注:uploadURL.url = "http://localhost:80/ShowProduct-debug/uploadFile.php";路径一定要写对,否则回报Error #2044: 未处理的 IOErrorEvent:。 text=Error #2038: 文件 I/O 错误。
2. php代码

// Flash 传递的文件表单 name 属性为 Filedata
$fileName = $_FILES["Filedata"]["name"];
$file = $_FILES["Filedata"]["tmp_name"];
$path = "uploadFiles/";
if(!is_dir("./uploadFiles")){
@mkdir("./uploadFiles");
}
if (move_uploaded_file($file, $path . $fileName)){
echo Success;
}else{
echo Fail;
}
?>

注:php文件一定要放到Apache运行的目录里,例如:把php文件放到C:\xampp\htdocs\ShowProduct-debug目录下

人气教程排行