加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

flex调用php上传图片

发布时间:2020-12-15 04:19:45 所属栏目:百科 来源:网络整理
导读:本例实现点击按钮弹出上传提示框,调用php文件,将图片上传至指定位置 main.mxml ?xml version="1.0" encoding="utf-8"?s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.c

本例实现点击按钮弹出上传提示框,调用php文件,将图片上传至指定位置

main.mxml

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
			   xmlns:s="library://ns.adobe.com/flex/spark" 
			   xmlns:mx="library://ns.adobe.com/flex/mx">
	<fx:Script>
		<![CDATA[
		import mx.managers.PopUpManager;
		
		protected function button1_clickHandler(event:MouseEvent):void
			{
				var imageWindow:ImageWindow = ImageWindow(PopUpManager.createPopUp(this,ImageWindow,false));
				PopUpManager.centerPopUp(imageWindow);
			}
		]]>
	</fx:Script>
	<fx:Declarations>
		<!-- 将非可视元素(例如服务、值对象)放在此处 -->
	</fx:Declarations>
	<s:Button x="183" y="228" label="弹出" click="button1_clickHandler(event)"/>
</s:Application>
ImageWindow.mxml
<?xml version="1.0" encoding="utf-8"?>
<s:TitleWindow xmlns:fx="http://ns.adobe.com/mxml/2009" 
			   xmlns:s="library://ns.adobe.com/flex/spark" 
			   xmlns:mx="library://ns.adobe.com/flex/mx"
			   width="700" height="350" title="设置图片"
			   close="PopUpManager.removePopUp(this);">
	<s:layout>
		<s:BasicLayout/>
	</s:layout>
	<fx:Script>
		<![CDATA[
			import mx.controls.Alert;
			import mx.managers.CursorManager;
			import mx.managers.PopUpManager;
			import mx.rpc.events.ResultEvent;
			
			[Bindable]
			private var file:FileReference = new FileReference();

			protected function chooseFile(event:MouseEvent):void
			{
				var imgFileFilter:FileFilter = new FileFilter("Images","*.jpg;*.gif;*.png");
				file.browse([imgFileFilter]);
				file.addEventListener(Event.SELECT,haveSelected);
			}

			private function haveSelected(event:Event):void
			{
				if(FileReference(event.target).size > 512000)
				{
					Alert.show("文件大小超过500K,请重新选择!","提示");
					return;
				}
				fileName.text = file.name;
			}

			protected function upLoadFile(event:MouseEvent):void
			{
				if(fileName.text == "未选择文件")
				{
					Alert.show("请选择要上传的文件","提示");
					return;
				}
				else
				{
					var request:URLRequest = new URLRequest("http://localhost:8008/uploadfiles.php");
					file.addEventListener(Event.COMPLETE,upLoadFileComplete);
					file.addEventListener(ProgressEvent.PROGRESS,progressHandler);
					pb.visible = true;
					file.upload(request);
				}
			}

			private function progressHandler(event:ProgressEvent):void
			{
				pb.setProgress(event.bytesLoaded,event.bytesTotal);
			}
			
			private function upLoadFileComplete(event:Event):void
			{
				PopUpManager.removePopUp(this);
				Alert.show("文件上传成功!","提示");
			}

			protected function stopUpLoad(event:MouseEvent):void
			{
				file.cancel();
				PopUpManager.removePopUp(this);
			}

		]]>
	</fx:Script>
	<fx:Declarations>
		<!-- 将非可视元素(例如服务、值对象)放在此处 -->
	</fx:Declarations>
	<mx:ViewStack id="imageViewStack" cornerRadius="5" backgroundColor="#EFF1F2" borderStyle="solid" top="20" right="15" left="15" bottom="60">
		<s:NavigatorContent label="本地图片" width="100%" height="100%">
			<s:VGroup width="100%" height="100%" paddingTop="30" paddingLeft="30" paddingRight="30" gap="10">
				<s:Label text="选择您的图片并上传:" fontSize="15" width="100%" color="#777777"/>
				<s:HGroup width="100%" verticalAlign="middle" horizontalAlign="center" gap="20">
					<s:Button label="选择" click="chooseFile(event)"/>
					<s:Label id="fileName" text="未选择文件" fontSize="13" color="#777777"/>
					<mx:ProgressBar id="pb" mode="manual" labelPlacement="center" visible="false"/>
				</s:HGroup>
				<mx:Spacer height="5"/>
				<s:BorderContainer cornerRadius="5" width="100%" height="80" borderColor="#D7D7D7">
					<s:Label text="您可以选择一张本地的图片,用来设置您的图形的背景,只允许上传.jpg .png .pif格式的图片,文件最大500K." top="20" left="20" right="20" fontSize="15" color="#777777"/>
				</s:BorderContainer>
			</s:VGroup>
		</s:NavigatorContent>
		<s:NavigatorContent label="搜索" width="100%" height="100%">
			
		</s:NavigatorContent>
		<s:NavigatorContent label="网络图片" width="100%" height="100%">
			
		</s:NavigatorContent>
	</mx:ViewStack>
	<s:TabBar dataProvider="{imageViewStack}" left="25" top="10" cornerRadius="5" chromeColor="#6D93FF" focusColor="#70EE88"/>
	<s:Button y="275" label="确定" right="100" click="upLoadFile(event)" chromeColor="#8FC3F3"/>
	<s:Button y="275" label="取消" right="16" chromeColor="#8FC3F3" click="stopUpLoad(event)"/>
</s:TitleWindow>

uploadfiles.php

<?php
	$fileName = $_FILES["Filedata"]["name"];
	$file = $_FILES["Filedata"]["tmp_name"];     
	$path = "uploadFiles/";     
	if (move_uploaded_file($file,$path . $fileName)){     
		echo 1;     
	}else{     
		echo 0;     
	} 
?>
注:想看见所选的上传图片应在www文件夹下创建一个uploadFiles文件夹用来存储上传图片

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读