ブラウザでダウンロード http によるデータ送信どのようなフォーマットで通信するかはともかくとして、 クライアントで発生したデータをサーバで取得する基本的な部分です http の処理としては大きく分けて2通りありますが、 これが最も一般的な方法です <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" initialize="initData();" > <mx:Script> <![CDATA[ import mx.controls.*; import mx.events.*; import mx.rpc.events.*; import mx.formatters.*; import flash.external.*; // ********************************************************* // アプリケーションの初期化 // ********************************************************* public function initData():void { firebug("処理開始") } // ********************************************************* // ログ表示 // ********************************************************* public function firebug(data:Object):void { var fmt:DateFormatter = new DateFormatter(); fmt.formatString = "YYYY/MM/DD HH:NN:SS"; var logdt:String = fmt.format( new Date ); ExternalInterface.call( "console.log", logdt, data+"" ); } // ***************************************************** // HTTPServiceを使用してHTTPリクエスト(GET)を行う // ***************************************************** private function sendData():void { // リクエストするURLをセット srv.url = "response.php"; srv.request.fld1 = fld1.text; srv.request.fld2 = fld2.text; srv.request.fld3 = fld3.text; // レスポンス結果のデータフォーマット srv.resultFormat = "text"; srv.method = "GET"; srv.send(); } // ***************************************************** // HTTPServiceが成功 // ***************************************************** private function resultHandler(e:ResultEvent):void { Alert.show(e.result.toString()); } // ***************************************************** // HTTPServiceでエラーが発生した // ***************************************************** private function faultHandler(e:FaultEvent):void { Alert.show(e.fault.message); } ]]> </mx:Script> <mx:HTTPService id="srv" showBusyCursor="true" result="resultHandler(event)" fault="faultHandler(event)" /> <mx:Form width="90%" height="90%"> <mx:FormHeading label="http データ通信"/> <mx:FormItem label="フィールド1" labelStyleName="labelAlign" paddingBottom="30" > <mx:TextInput id="fld1" /> </mx:FormItem> <mx:FormItem label="フィールド2" labelStyleName="labelAlign" paddingBottom="30" > <mx:TextInput id="fld2" /> </mx:FormItem> <mx:FormItem label="フィールド3" labelStyleName="labelAlign" paddingBottom="30" > <mx:TextInput id="fld3" /> </mx:FormItem> <mx:FormItem label="" labelStyleName="labelAlign" paddingBottom="30" > <mx:Button id="btn" label="送信" click="sendData()" /> </mx:FormItem> </mx:Form> </mx:Application> PHP 側のコード基本的に、$_GET または $_POST を処理して決められたフォーマットで返すという事 しかしません。表に出無い部品として完全に裏方として徹します。 ( セッションは普通に使えます ) <? header( "Content-Type: text/html; Charset=utf-8" ); header( "Expires: Wed, 31 May 2000 14:59:58 GMT" ); print_r($_GET); ?> |