鍋跺皵鍐欏啓php鎰熻蹇冩儏榪樻槸铔垝鐣呯殑錛圝ava閲岀殑Struts+Hibernate+Spring鍐欎箙浜嗭級錛屽啓鍐檖hp鎵嶇煡閬擄紝榪欑琚В鏀劇殑鎰熻鐪熷ソ銆備笉寰椾笉璇達紝php鏄竴縐嶆湇鍔″櫒绔瘮杈冪簿杈熺殑璇█錛岄毦鎬磭鎷滆呰繖涔堝銆傚氨鏉ユ暣鏁磃lex鍩轟簬php鐨勪氦浜掞紝鐪嬪ソ浜嗭紝榪欓噷瑕佷粙緇嶇殑涓嶆槸閫氳繃flex閲岄潰鐨凥ttpService緇勪歡涓巔hp浜や簰錛岃屾槸鍊熷姪AMFPHP閫氳繃RemoteObject鏂瑰紡鏉ヤ氦浜掋?br />鍏充簬amfphp鐜鐨勬惌寤猴紝璇峰弬鑰冩湰浜哄啓鐨刟mfphp鐜鎼緩鏁欑▼錛屽綋鐒墮噷闈㈠啓鐨勬瘮杈冪矖鐣ワ紝鏈変笉娓呯矖鐨勫彲浠ヨ仈緋繪垜銆?br />鍏堟潵鐪嬬湅php绔唬鐮?br />ProductServices.php
<?php
class ProductServices{
/**
*query product list
*/
function getProductList(){
$link=@mysql_connect("localhost", "root", "") or die("Could not connect");
mysql_select_db("compass",$link);
mysql_query("set names utf8",$link);
$result = mysql_query("SELECT * FROM product",$link);
$array=array();
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
array_push($array,$row);
}
mysql_free_result($result);
mysql_close($link);
return $array;
}
function findProductById($id){
$link=@mysql_connect("localhost", "root", "") or die("Could not connect");
mysql_select_db("compass",$link);
mysql_query("set names utf8",$link);
$result = mysql_query("SELECT * FROM product where id= ".$id,$link);
$array=array();
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
array_push($array,$row);
}
mysql_free_result($result);
mysql_close($link);
return $array;
}
}
?>
鍦≒roductServices.php鏂囦歡涓紝瀹氫箟浜嗕竴涓被ProductServices錛岄噷闈㈠皝瑁呬簡涓や釜鏂規(guī)硶錛実etProductList錛堬級錛宖indProductById錛?id錛夐噷闈㈠唴瀹瑰緢綆鍗曪紝涓涓槸鍏ㄩ儴鏌ヨ鍟嗗搧錛屼竴涓槸鏍規(guī)嵁Id鏌ヨ鍟嗗搧
娉ㄦ剰璇ユ枃浠跺瓨鏀劇殑浣嶇疆C:\inetpub\wwwroot\amfphp\services\ 榪欐牱鍙互琚玜mfphp鐨勮祫婧愮鐞嗗櫒媯绱㈠埌
緙栧啓flex绔唬鐮?
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
creationComplete="ro.getOperation('getProductList').send()"
>
<!--
ro.getOperation('getProductList').send()
ro涓篟emoteObject鐨処d
ro.getOperation('getProductList')鑾峰彇php鏂囦歡涓殑鏂規(guī)硶鍚嶏紝鍙婅璋冪敤鏈嶅姟鍣ㄧ鐨勯偅涓柟娉?br /> send()鍙戦佽姹傦紝鍦╯end涓彲浼犻掑弬鏁幫紝澶氫釜鍙傛暟涔嬮棿鐢ㄩ楀彿鍒嗛殧錛屽弬鏁板悕瑕佷笌鏈嶅姟鍣ㄧ鐨勫弬鏁板悕涓鑷?br /> -->
<fx:Declarations>
<!-- 灝嗛潪鍙鍏冪礌錛堜緥濡傛湇鍔°佸煎璞★級鏀懼湪姝ゅ -->
<s:RemoteObject id="ro"
destination="amfphp"
source="ProductServices"
fault="getProductList_faultHandler(event)"
result="getProductList_resultHandler(event)"
endpoint="http://192.168.3.11/amfphp/gateway.php">
</s:RemoteObject>
<!--
RemoteObject涓殑destination闇瑕佷笌src鐩綍涓嬬殑services-config.xml涓畾涔夌殑destination鐨処d淇濇寔涓鑷?br /> source="ProductServices"瑕佽皟鐢ㄦ湇鍔″櫒绔殑閭d釜php綾伙紝濡傛灉瀛樺湪鍖呯殑璇濇敞鎰忓寘鍚?綾誨悕
fault 澶辮觸鏃跺搷搴旂殑鏂規(guī)硶
result 鎴愬姛鏃剁殑鏂規(guī)硶
endpoint="http://192.168.3.11/amfphp/gateway.php" 姝g‘璁塊棶gateway.php鐨勫湴鍧
-->
</fx:Declarations>
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
import mx.utils.ArrayUtil;
[Bindable]
internal var dp:ArrayCollection;
//amfphp璇鋒眰鎴愬姛鏃惰皟鐢ㄦ柟娉?/span>
protected function getProductList_resultHandler(event:ResultEvent):void
{
dp=new ArrayCollection(ArrayUtil.toArray(event.result));
}
//amfphp璇鋒眰澶辮觸鏃惰皟鐢ㄦ柟娉?/span>
protected function getProductList_faultHandler(event:FaultEvent):void
{
Alert.show("澶辮觸浜?/span>",event.fault.message);
}
]]>
</fx:Script>
<s:layout>
<s:HorizontalLayout/>
</s:layout>
<s:DataGrid width="519" height="292" dataProvider="{dp}" requestedRowCount="4">
<s:columns>
<s:ArrayList>
<s:GridColumn dataField="id" headerText="緙栧彿"></s:GridColumn>
<s:GridColumn dataField="name" headerText="鍟嗗搧鍚嶇О"></s:GridColumn>
<s:GridColumn dataField="price" headerText="鍗曚環(huán)"></s:GridColumn>
<s:GridColumn dataField="descption" headerText="鎻忚堪"></s:GridColumn>
</s:ArrayList>
</s:columns>
</s:DataGrid>
</s:Application>
蹇呴』鍦╢lex宸ョ▼鐨剆rc鐩綍涓嬪瓨鏀句竴涓悕涓簊ervices-config.xml
<? version="1.0" encoding="UTF-8"?>
<services-config>
<services>
<service id="sabreamf-flashremoting-service"
class="flex.messaging.services.RemotingService"
messageTypes="flex.messaging.messages.RemotingMessage">
<destination id="amfphp">
<channels>
<channel ref="my-amfphp"/>
</channels>
<properties>
<source>*</source>
</properties>
</destination>
</service>
</services>
<channels>
<channel-definition id="my-amfphp" class="mx.messaging.channels.AMFChannel">
<endpoint uri="http://192.168.3.11/amfphp/gateway.php" class="flex.messaging.endpoints.AMFEndpoint"/>
</channel-definition>
</channels>
</services-config>
闇瑕佸皢璇ユ枃浠剁紪璇戝埌鐜涓幓

鏁堟灉鍥?br />
鐐規(guī)垜涓嬭澆浠g爜
]]>