Amfphp与Flex交互:读取mysql数据

来源:互联网 发布:淘宝客服应聘面试技巧 编辑:程序博客网 时间:2024/04/27 23:10

服务器端代码,amfphp的services目录下建立readData.php文件,代码如下

<?php
    class ReadDB
    {
              function getData()
             {
                  mysql_connect("localhost","root","root");
                  mysql_select_db("mmmm");
                  mysql_query("SET NAMES UTF8");
                  $sql="select * from mmmm";
                  return mysql_query($sql);
             }
    }
?>

 

flex代码

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" backgroundColor="#FFFFFF">
    <mx:RemoteObject id="myservice" fault="FaultHandler(event)" showBusyCursor="true" source="ReadDB" destination="amfphp">
        <mx:method name="getData" result="ReadHandler(event)" />
    </mx:RemoteObject>

 

<mx:Script>
        <![CDATA[
            import mx.managers.CursorManager;
            import mx.rpc.events.ResultEvent;
            import mx.rpc.events.FaultEvent;
            //注:错误处理函数
            private function FaultHandler(fault:FaultEvent):void
            {
                 //注:删除忙状态光标             
                 CursorManager.removeBusyCursor();
                 //注:返回的错误信息,让其在result_test中显示出来
                 result_text.text = "code:/n" + fault.fault.faultCode + "/n/nMessage:/n" + fault.fault.faultString + "/n/nDetail:/n" + fault.fault.faultDetail;
            }

            private function ResultHandler(evt:ResultEvent):void
            {
                 //注: 将获得的结果转化为String类型,并交给result_text显示出来
                 result_text.text = evt.message.body.toString(); 

            }
           
            private function ReadHandler(evt:ResultEvent):void 
            {
                 dg.dataProvider = evt.result;
            }                
        ]]>
    </mx:Script>


    <mx:TextArea x="10" y="36" width="319" height="113" id="result_text"/>
    <mx:Label x="10" y="10" text="Result:"/> 
    <mx:DataGrid x="337" y="36" width="821" id="dg" height="319">
        <mx:columns>
            <mx:DataGridColumn headerText="lastname" dataField="lastName"/>
            <mx:DataGridColumn headerText="firstname" dataField="firstName"/>
            <mx:DataGridColumn headerText="phone" dataField="phone"/>
            <mx:DataGridColumn headerText="email" dataField="email"/>
        </mx:columns>
    </mx:DataGrid>
    <mx:Button x="1058" y="363" label="view" click="myservice.getOperation('getData').send();" width="100"/>
  
</mx:Application>

原创粉丝点击