ブラウザでダウンロード http によるデータ送信どのようなフォーマットで通信するかはともかくとして、 クライアントで発生したデータをサーバで取得する基本的な部分です http の処理としては大きく分けて2通りありますが、 これが最も一般的な方法です 001. <?xml version= "1.0" encoding= "utf-8" ?> 002. <mx:Application 003. xmlns:mx= "http://www.adobe.com/2006/mxml" 004. initialize= "initData();" 005. > 006. 007. <mx:Script> 008. <![CDATA[ 009. 010. import mx.controls.*; 011. import mx.events.*; 012. import mx.rpc.events.*; 013. import mx.formatters.*; 014. import flash.external.*; 015. 016. // ********************************************************* 017. // アプリケーションの初期化 018. // ********************************************************* 019. public function initData(): void { 020. 021. firebug( "処理開始" ) 022. 023. } 024. 025. // ********************************************************* 026. // ログ表示 027. // ********************************************************* 028. public function firebug(data:Object): void { 029. 030. var fmt:DateFormatter = new DateFormatter(); 031. 032. fmt.formatString = "YYYY/MM/DD HH:NN:SS" ; 033. var logdt:String = fmt.format( new Date ); 034. 035. ExternalInterface.call( 036. "console.log" , logdt, 037. data+ "" 038. ); 039. 040. } 041. 042. // ***************************************************** 043. // HTTPServiceを使用してHTTPリクエスト(GET)を行う 044. // ***************************************************** 045. private function sendData(): void { 046. // リクエストするURLをセット 047. srv.url = "response.php" ; 048. 049. srv.request.fld1 = fld1.text; 050. srv.request.fld2 = fld2.text; 051. srv.request.fld3 = fld3.text; 052. 053. // レスポンス結果のデータフォーマット 054. srv.resultFormat = "text" ; 055. srv.method = "GET" ; 056. srv.send(); 057. 058. } 059. 060. 061. // ***************************************************** 062. // HTTPServiceが成功 063. // ***************************************************** 064. private function resultHandler(e:ResultEvent): void { 065. 066. Alert.show(e.result.toString()); 067. 068. } 069. 070. // ***************************************************** 071. // HTTPServiceでエラーが発生した 072. // ***************************************************** 073. private function faultHandler(e:FaultEvent): void { 074. Alert.show(e.fault.message); 075. } 076. 077. ]]> 078. </mx:Script> 079. 080. <mx:HTTPService 081. id= "srv" 082. showBusyCursor= "true" 083. result= "resultHandler(event)" 084. fault= "faultHandler(event)" 085. /> 086. 087. <mx:Form width= "90%" height= "90%" > 088. <mx:FormHeading label= "http データ通信" /> 089. 090. <mx:FormItem 091. label= "フィールド1" 092. labelStyleName= "labelAlign" 093. paddingBottom= "30" 094. > 095. <mx:TextInput id= "fld1" /> 096. 097. </mx:FormItem> 098. <mx:FormItem 099. label= "フィールド2" 100. labelStyleName= "labelAlign" 101. paddingBottom= "30" 102. > 103. <mx:TextInput id= "fld2" /> 104. 105. </mx:FormItem> 106. <mx:FormItem 107. label= "フィールド3" 108. labelStyleName= "labelAlign" 109. paddingBottom= "30" 110. > 111. <mx:TextInput id= "fld3" /> 112. 113. </mx:FormItem> 114. 115. <mx:FormItem 116. label= "" 117. labelStyleName= "labelAlign" 118. paddingBottom= "30" 119. > 120. <mx:Button 121. id= "btn" 122. label= "送信" 123. click= "sendData()" 124. /> 125. </mx:FormItem> 126. 127. 128. </mx:Form> 129. 130. </mx:Application> PHP 側のコード基本的に、$_GET または $_POST を処理して決められたフォーマットで返すという事 しかしません。表に出無い部品として完全に裏方として徹します。 ( セッションは普通に使えます ) 1. <? 2. header( "Content-Type: text/html; Charset=utf-8" ); 3. header( "Expires: Wed, 31 May 2000 14:59:58 GMT" ); 4. 5. print_r( $_GET ); 6. ?> |