[AS 3.0] URLLoader로 외부파일과 변수 주고 받기 (PHP)

ActionScript 3.0 — Tags: , , — Siaa @ 2:49 pm

AS 2.0에서는 아래처럼 sendAndLoad()를 이용해서 외부파일과 변수를 주고 받았었다.

function dataSendLoad() {
	//변수를 PHP 파일로 전송할 개체 생성
	var mySendVars = new LoadVars();

	//개체에 변수 입력
	var mySendVars.sendvars = "testVars";

	//PHP로부터 보내진 변수들을 로드할 LoadVars 개체 생성
	var myLoadVars  = new LoadVars();

	//로드 완료 후 실행 할 함수 정의
	mySendVars.onLoad = function(success) {
		...
	}

	//PHP 파일로 변수 전송 및 로드
	mySendVars.sendAndLoad("send_load.php", myLoadVars, "POST");
}

AS 3.0에서는~~

package {

	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.ProgressEvent;
	import flash.net.URLLoader;
	import flash.net.URLRequest;
	import flash.net.URLRequestMethod;
	import flash.net.URLLoaderDataFormat;
	import flash.net.URLVariables;
	import flash.events.IOErrorEvent;

	public class Main extends Sprite {

		// 변수를 주고 받을 PHP파일
		private var url : String = "send_load.php";
		// PHP에 전달한 변수
		private var variables : URLVariables;			

		public function Main() : void {
			variables = new URLVariables();
			// 변수값 할당
			variables.sendvars = "testVars";		

			sendData(url, variables);
		}

		public function sendData(_url:String, _vars:URLVariables):void {
			var request : URLRequest = new URLRequest(_url);
			request.data = _vars;
			// 전송방식
			request.method = URLRequestMethod.POST;		

			var loader:URLLoader = new URLLoader();
			// 데이터 형식 지정(BINARY, TEXT, VARIABLES)
			loader.dataFormat = URLLoaderDataFormat.VARIABLES;
			loader.addEventListener(ProgressEvent.PROGRESS, onProgressHandler);
			loader.addEventListener(Event.COMPLETE, onCompleteHandler);
			loader.addEventListener(IOErrorEvent.IO_ERROR, onIOErrorHandler);
			loader.load(request);
		}

		private function onProgressHandler(e:ProgressEvent):void {
			trace("@ PHP Loading");
		}

		private function onCompleteHandler(e:Event):void {
			var loader : URLLoader = URLLoader(e.target);
			trace( "loader.data : " + loader.data );
		}

		private function onIOErrorHandler(e:IOErrorEvent):void {
			trace("Error loading URL.");
		}
	}
}
  • Share/Bookmark

0 Comments »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a comment

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.
(c) 2010 blog.flasia.com | powered by WordPress with Barecity