[AS3] PHPとAS3の連携 POSTでテキストを取得

2010/09/29

こんにちは。きんくまです。

POSTの場合ではURLVariablesを使います。

■Main.as

package 
{
	import flash.display.Sprite;
	import flash.errors.IOError;
	import flash.events.Event;
	import flash.events.IOErrorEvent;
	import flash.net.URLLoader;
	import flash.net.URLLoaderDataFormat;
	import flash.net.URLRequest;
	import flash.net.URLRequestMethod;
	import flash.net.URLVariables;
	
	/**
	 * ...
	 * @author KinkumaDesign
	 */
	public class Main extends Sprite 
	{
		
		public function Main():void 
		{
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
		
		private function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			
			var vars:URLVariables = new URLVariables();
			vars.name = "Peter";
			vars.age = 15;
			var req:URLRequest = new URLRequest();
			req.url = "mypost.php";
			req.method = URLRequestMethod.POST;
			req.data = vars;
			
			var urlLoader:URLLoader = new URLLoader();
			urlLoader.dataFormat = URLLoaderDataFormat.TEXT; //返ってくるのはText
			urlLoader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
			urlLoader.addEventListener(Event.COMPLETE, loaderCompleteHandler);
			urlLoader.load(req);
		}
		
		private function loaderCompleteHandler(e:Event):void 
		{
			var urlLoader:URLLoader = e.target as URLLoader;
			var msg:String = urlLoader.data;
			trace("msg = " + msg);
		}
		
		private function ioErrorHandler(e:IOErrorEvent):void 
		{
			throw new Error(e.text);
		}
		
	}
	
}

■mypost.php

<?php
$name = $_POST["name"];
$age = $_POST["age"];

$msg .= 'Hello '.$name.'. Your age is '.$age.' years old !';
echo $msg;
?>

■参考ページです。どうもありがとうございますです。
>> feb19.jp blog – AS3でPHPと通信する


自作iPhoneアプリ 好評発売中!
フォルメモ - シンプルなフォルダつきメモ帳
ジッピー電卓 - 消費税や割引もサクサク計算!

ページトップへ戻る