AS3とPHP連携 – 簡単なデータのやりとり

Filed under AS3, PHP

AS3とPHPの連携方法のサンプル。

PHPに数字を2つ渡してその和を受け取ります。

サンプルはこちら

以下、ソースです。

AS3側

package
{
	import flash.display.Sprite;
	import flash.display.StageAlign;
	import flash.display.StageScaleMode;
	import flash.events.Event;
	import flash.net.URLLoader;
	import flash.net.URLLoaderDataFormat;
	import flash.net.URLRequest;
	import flash.net.URLRequestMethod;
	import flash.net.URLVariables;
	import flash.text.TextField;

	[SWF(backgroundColor="0xFFFFFF")]
	public class php_access extends Sprite
	{
		// PHPに渡す変数
		private const A:int = 10;
		private const B:int = 12;

		public function php_access()
		{
			// ステージの設定
			stage.scaleMode = StageScaleMode.NO_SCALE;
			stage.align = StageAlign.TOP_LEFT;

			// リクエストの準備
			var req:URLRequest = new URLRequest("PHPファイルまでのパス");
			req.method = URLRequestMethod.POST;

			// PHPに渡すパラメータ
			var param:URLVariables = new URLVariables();
			param.a = A;
			param.b = B;
			req.data = param;

			// ローダー
			var loader:URLLoader = new URLLoader();
			loader.dataFormat = URLLoaderDataFormat.TEXT;
			loader.addEventListener(Event.COMPLETE, onComplete);
			loader.load(req);
		}

		// 通信が成功したら実行される関数
		private function onComplete(e:Event):void
		{
			var loader:URLLoader = e.target as URLLoader;
			loader.removeEventListener(Event.COMPLETE, onComplete);

			// 結果を表示
			var result:String = loader.data as String;
			var t:TextField = new TextField;
			t.width = 400;
			t.text = "パラメータAとBをPHPに渡してその和を受け取ります。\n\n"
			t.appendText(A + " + " + B + " = " + result);
			addChild(t);
			t.x = t.y = 10;
		}
	}
}

PHP側

<?php
	# AS3から数字を受け取る
	$a = $_POST['a'];
	$b = $_POST['b']; 

	# 計算
	$sum = $a + $b;  

	# 出力
	echo $sum;
?>

Post a Comment

Your email is never published nor shared.