ï»??xml version="1.0" encoding="utf-8" standalone="yes"?>色88888久久久久久影院,国产成人一二,国产精品午夜视频http://www.aygfsteel.com/sxyx2008/category/49918.html温馨提示åQšæ‚¨çš„æ¯ä¸€‹Æ¡è{è½?体现了我写此文的意义!!!烦请您在转蝲时注明出处http://www.aygfsteel.com/sxyx2008/谢谢合作!!! zh-cnFri, 28 Oct 2011 18:00:06 GMTFri, 28 Oct 2011 18:00:06 GMT60flex4.5+php5.2+amfphp通过RemoteObject交互http://www.aygfsteel.com/sxyx2008/archive/2011/10/28/362233.html雪山飞鹄雪山飞鹄Fri, 28 Oct 2011 03:52:00 GMThttp://www.aygfsteel.com/sxyx2008/archive/2011/10/28/362233.htmlhttp://www.aygfsteel.com/sxyx2008/comments/362233.htmlhttp://www.aygfsteel.com/sxyx2008/archive/2011/10/28/362233.html#Feedback0http://www.aygfsteel.com/sxyx2008/comments/commentRss/362233.htmlhttp://www.aygfsteel.com/sxyx2008/services/trackbacks/362233.html偶尔写写php感觉心情˜q˜æ˜¯è›®èˆ’ç•…çš„åQˆJava里的Struts+Hibernate+Spring写久了)åQŒå†™å†™php才知道,˜q™ç§è¢«è§£æ”„¡š„感觉真好。不得不è¯ß_¼Œphp是一¿UæœåŠ¡å™¨ç«¯æ¯”è¾ƒç²¾è¾Ÿçš„è¯­è¨€åQŒé𾿀ªå´‡æ‹œè€…这么多。就来整整flexåŸÞZºŽphp的交互,看好了,˜q™é‡Œè¦ä»‹¾lçš„不是通过flex里面的HttpService¾l„äšg与php交互åQŒè€Œæ˜¯å€ŸåŠ©AMFPHP通过RemoteObject方式来交互ã€?br />关于amfphp环境的搭建,请参考本人写的amfphp环境搭徏教程åQŒå½“焉™‡Œé¢å†™çš„æ¯”较粗略,有不清粗的可以联¾pÀLˆ‘ã€?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;
    }

}
?>

在ProductServices.phpæ–‡äšg中,定义了一个类ProductServicesåQŒé‡Œé¢å°è£…了两个æ–ÒŽ³•åQŒgetProductListåQˆï¼‰åQŒfindProductByIdåQ?idåQ‰é‡Œé¢å†…容很½Ž€å•,一个是全部查询商品åQŒä¸€ä¸ªæ˜¯æ ÒŽ®Id查询商品

注意该文件存攄¡š„位置C:\inetpub\wwwroot\amfphp\services\ ˜q™æ ·å¯ä»¥è¢«amfphp的资源管理器‹‚€ç´¢åˆ°
 


¾~–写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为RemoteObjectçš„Id
        ro.getOperation('getProductList')获取phpæ–‡äšg中的æ–ÒŽ³•名,及要调用服务器端的那个方æ³?br />        send()发送请求,在send中可传递参敎ͼŒå¤šä¸ªå‚数之间用逗号分隔åQŒå‚数名要与服务器端的参数名一è‡?br />    
-->
    
<fx:Declarations>
        
<!-- ž®†éžå¯è§†å…ƒç´ åQˆä¾‹å¦‚服务、值对象)攑֜¨æ­¤å¤„ -->
        
        
<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çš„Id保持一è‡?br />            source="ProductServices"要调用服务器端的那个php¾c»ï¼Œå¦‚果存在包的话注意包å?¾cÕd
            fault å¤ÞpÓ|时响应的æ–ÒŽ³•
            result æˆåŠŸæ—¶çš„æ–ÒŽ³•
            endpoint
="http://192.168.3.11/amfphp/gateway.php" æ­£ç¡®è®‰K—®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è¯äh±‚成功时调用方æ³?/span>
            protected function getProductList_resultHandler(event:ResultEvent):void
            {
                dp
=new ArrayCollection(ArrayUtil.toArray(event.result));
            }
            
//amfphpè¯äh±‚å¤ÞpÓ|时调用方æ³?/span>
            protected function getProductList_faultHandler(event:FaultEvent):void
            {
                Alert.show(
"å¤ÞpÓ|äº?/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="单ä­h"></s:GridColumn>
                
<s:GridColumn dataField="descption" headerText="描述"></s:GridColumn>
            
</s:ArrayList>
        
</s:columns>
    
</s:DataGrid>
    
</s:Application>

必须在flex工程的src目录下存放一个名为services-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 />
ç‚ÒŽˆ‘下蝲代码

雪山飞鹄 2011-10-28 11:52 发表评论
]]>
AMFPHP环境搭徏http://www.aygfsteel.com/sxyx2008/archive/2011/10/28/362230.html雪山飞鹄雪山飞鹄Fri, 28 Oct 2011 03:18:00 GMThttp://www.aygfsteel.com/sxyx2008/archive/2011/10/28/362230.htmlhttp://www.aygfsteel.com/sxyx2008/comments/362230.htmlhttp://www.aygfsteel.com/sxyx2008/archive/2011/10/28/362230.html#Feedback0http://www.aygfsteel.com/sxyx2008/comments/commentRss/362230.htmlhttp://www.aygfsteel.com/sxyx2008/services/trackbacks/362230.htmlamfphp下蝲:http://sourceforge.net/projects/amfphp/files/amfphp/
˜q™é‡Œæˆ‘们下蝲amfphp 1.9.zip
下蝲后解压到web服务器的工作目录下,前提是您已配¾|®å¥½phpçš„å·¥ä½œçŽ¯å¢ƒã€‚è¿™é‡ŒäØ“äº†ç®€å•è“v见,使用IIS7.0+php5.2
卻I¼šž®†amfphp1.9解压到C:\inetpub\wwwroot
browser:目录为amfphp可供我们直接在浏览器‹¹è§ˆçš„ç›®å½?br /> servicesåQšç›®å½•是我们自己开发的php¾cÀL–‡ä»¶å­˜æ”„¡›®å½?br /> gateway.php是一个比较重要的文äšgã€?br /> 打开gateway.phpåQŒå®šä½åˆ°127è¡?br /> //$gateway->setCharsetHandler("utf8_decode", "ISO-8859-1", "ISO-8859-1");
$gateway->setCharsetHandler("utf8_decode", "utf-8", "utf-8");
讄¡½®ä¸­æ–‡å­—符支持
如果服务器和php环境正常的话åQŒåœ¨åœ°å€æ è¾“å…?a href="http://localhost/amfphp/browser/">http://localhost/amfphp/browser/ž®†ä¼šçœ‹åˆ°å¦‚下图所½C?img border="0" alt="" src="http://www.aygfsteel.com/images/blogjava_net/sxyx2008/amfphp002.jpg" width="842" height="327" />
配置参数如上图所½Cºï¼Œç‚¹save保存讄¡½®ã€?br /> ¾~–写一个php与mysql交互的类ã€?br /> product.php
<?php
class product{

    
function print_xml(){
    
//获取数据库连�/span>
        $link=@mysql_connect("localhost","root","") or die('数据库连接错è¯?/span>');
        
//选择数据�/span>
        mysql_select_db("compass",$link);
        
//讄¡½®æ•°æ®åº“ç¼–ç ?/span>
        mysql_query("set names utf8",$link);
        
//查询数据�/span>
        $result=mysql_query("select * from product");
        
        
//创徏DOMDocument对象
        $doc = new DOMDocument('1.0','utf-8');
        
//格式化输�/span>
        $doc->formatOutput = true;
        
        
//创徏根元�/span>
        $root = $doc->createElement('root');
        
//æ·ÕdŠ æ ¹å…ƒç´?/span>
        $root = $doc->appendChild($root);
    
        
//从数据库中获取数据每一条是一个product
        while($data=mysql_fetch_assoc($result)){
            
            
//创徏product标签
            $product=$doc->createElement('product');
            
//æ·ÕdŠ product标签
            $product = $root->appendChild($product);

            
//创徏Id元素
            $id = $doc->createElement('id');
            
//æ·ÕdŠ Id
            $id = $product->appendChild($id);
            
//创徏文本内容
            $idtext = $doc->createTextNode($data['id'].'');
            
//ž®†æ–‡æœ¬æ·»åŠ åˆ°id标签å†?/span>
            $idtext = $id->appendChild($idtext);
       
            
//创徏name标签
            $name = $doc->createElement('name');
            
//æ·ÕdŠ name
            $name = $product->appendChild($name);
            
//创徏name标签的文�/span>
            $nametext = $doc->createTextNode($data['name'].'');
            
//讄¡½®name标签的文æœ?/span>
            $nametext = $name->appendChild($nametext);

            
//创徏price标签
            $price = $doc->createElement('price');
            
//æ·ÕdŠ price
            $price = $product->appendChild($price);
            
//创徏price标签的文�/span>
            $pricetext = $doc->createTextNode($data['price'].'');
            
//讄¡½®price标签的文æœ?/span>
            $pricetext = $price->appendChild($pricetext);
        }
        
//关闭数据库连�/span>
        mysql_close($link);
        
//保存xml
        return $doc->saveXML();
    }
}
?>

注意该文件的¾~–写规则及存放èµ\å¾?br /> php中类文äšg的编写符合java中类的编写,åÏx–‡ä»¶åä¸Žç±»åå¤§ž®å†™ä¸€è‡?br /> 该文件必™åÕd­˜æ”¾äºŽC:\inetpub\wwwroot\amfphp\services\目录ä¸?br /> æ–ÒŽ³•最后ä‹É用return ˜q”回而不是输å‡?br /> åœ?a href="http://localhost/amfphp/browser/">http://localhost/amfphp/browser/中的‹¹è§ˆæƒ…况


雪山飞鹄 2011-10-28 11:18 发表评论
]]>
面向HTMLå’ŒPHP开发äh员的Flex快速入门指å?/title><link>http://www.aygfsteel.com/sxyx2008/archive/2011/10/27/362153.html</link><dc:creator>雪山飞鹄</dc:creator><author>雪山飞鹄</author><pubDate>Thu, 27 Oct 2011 02:36:00 GMT</pubDate><guid>http://www.aygfsteel.com/sxyx2008/archive/2011/10/27/362153.html</guid><wfw:comment>http://www.aygfsteel.com/sxyx2008/comments/362153.html</wfw:comment><comments>http://www.aygfsteel.com/sxyx2008/archive/2011/10/27/362153.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/sxyx2008/comments/commentRss/362153.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/sxyx2008/services/trackbacks/362153.html</trackback:ping><description><![CDATA[<a title="面向HTMLå’ŒPHP开发äh员的Flex快速入门指å? >面向HTMLå’ŒPHP开发äh员的Flex快速入门指å?/a><img src ="http://www.aygfsteel.com/sxyx2008/aggbug/362153.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/sxyx2008/" target="_blank">雪山飞鹄</a> 2011-10-27 10:36 <a href="http://www.aygfsteel.com/sxyx2008/archive/2011/10/27/362153.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>php查询数据库输出xmlhttp://www.aygfsteel.com/sxyx2008/archive/2011/10/27/362152.html雪山飞鹄雪山飞鹄Thu, 27 Oct 2011 02:33:00 GMThttp://www.aygfsteel.com/sxyx2008/archive/2011/10/27/362152.htmlhttp://www.aygfsteel.com/sxyx2008/comments/362152.htmlhttp://www.aygfsteel.com/sxyx2008/archive/2011/10/27/362152.html#Feedback0http://www.aygfsteel.com/sxyx2008/comments/commentRss/362152.htmlhttp://www.aygfsteel.com/sxyx2008/services/trackbacks/362152.html
function print_xml(){
    
//获取数据库连�/span>
        $link=@mysql_connect("localhost","root","") or die('数据库连接错è¯?/span>');
        
//选择数据�/span>
        mysql_select_db("compass",$link);
        
//讄¡½®æ•°æ®åº“ç¼–ç ?/span>
        mysql_query("set names utf8",$link);
        
//查询数据�/span>
        $result=mysql_query("select * from product");
        
        
//创徏DOMDocument对象
        $doc = new DOMDocument('1.0','utf-8');
        
//格式化输�/span>
        $doc->formatOutput = true;
        
        
//创徏跟元�/span>
        $root = $doc->createElement('root');
        
//æ·ÕdŠ è·Ÿå…ƒç´?/span>
        $root = $doc->appendChild($root);
    
    
//从数据库中获取数据每一条是一个product
        while($data=mysql_fetch_assoc($result)){
      
//创徏Id元素
            $id = $doc->createElement('id');
            
//æ·ÕdŠ Id
            $id = $root->appendChild($id);
            
//创徏文本内容
            $idtext = $doc->createTextNode($data['id'].'');
            
//ž®†æ–‡æœ¬æ·»åŠ åˆ°id标签å†?/span>
            $idtext = $id->appendChild($idtext);
       
      
//创徏name标签
            $name = $doc->createElement('name');
            
//æ·ÕdŠ name
            $name = $root->appendChild($name);
            
//创徏name标签的文�/span>
            $nametext = $doc->createTextNode($data['name'].'');
            
//讄¡½®name标签的文æœ?/span>
            $nametext = $name->appendChild($nametext);

      
//创徏price标签
            $price = $doc->createElement('price');
            
//æ·ÕdŠ price
            $price = $root->appendChild($price);
            
//创徏price标签的文�/span>
            $pricetext = $doc->createTextNode($data['price'].'');
            
//讄¡½®price标签的文æœ?/span>
            $pricetext = $price->appendChild($pricetext);
        }
        
//关闭数据库连�/span>
        mysql_close($link);
        
//保存xml
        echo $doc->saveXML();
    }


雪山飞鹄 2011-10-27 10:33 发表评论
]]>
Ö÷Õ¾Ö©Öë³ØÄ£°å£º »ÝÖÝÊÐ| Ë«°ØÏØ| °ÍÇàÏØ| »ªÒõÊÐ| ³ÉÎäÏØ| µ¤ÀâÏØ| ÆÜϼÊÐ| Àû´¨ÊÐ| Î÷³äÏØ| ×ÓÖÞÏØ| À­×ÎÏØ| ÄþÄÏÏØ| ¼òÑôÊÐ| Т²ýÏØ| ¿ª½­ÏØ| º×ɽÊÐ| Ïî³ÇÊÐ| º×¸ÚÊÐ| ·áÌ¨Çø| ³Î³ÇÏØ| ÐÂÃÜÊÐ| Ñúå¨| ÁùÖ¦ÌØÇø| ÐÞÎäÏØ| ÕÃÎäÏØ| ÎàÖÝÊÐ| °²ÐÂÏØ| ¶÷ƽÊÐ| ±±¾©ÊÐ| ÓÀ¿µÊÐ| ÁÙ¹ðÏØ| ¹§³Ç| ÀöË®ÊÐ| ¸»Ô´ÏØ| ÁÙä¬ÏØ| ÓÊÏä| Öг¬| ͨ»¯ÏØ| ƽ¶¨ÏØ| ÑôÐÂÏØ| ¶÷ƽÊÐ|