Amfphp简介作者:Flying

2010年03月10日 分类:玩蛋去
Amfphp 是PHP的RPC工具,它可以使PHP与下述技术无缝通信:
  • Flash 和 Flex Remoting
  • JavaScript JSON 和 Ajax JSON
  • XML 和XML-RPC

一、什么是RPC?

远端程序调用(RPC, Remote Procedure Call) 是一种客户端与服务器端交换数据方式。我们可以调用本地对象带对各种参数方法 ,设置回调并接受调用结果。我们不用关心发送和接收数据的实现细节。实现细节通常是抽象的, 就像我们在调用本地方法一样.

二、工作原理

客户端(Flash)与服务器端(php), 使用相同的方式描述方法调用和复杂数据。客户端序列化请求并将它发送到网关Amfphp。Amfphp再执行:

  • 反序列化请求
  • 找到相应的远程服务类
  • 实例化类
  • 执行安全检查
  • (使用指定参数)调用服务器端方法
  • 序列化返回的数据

Amfphp 可以正确地序列化、反序列化复杂类型数据。除了对象和数组,它还支持resources 数据连接资源,这就意味着我们可以通过调用远程方法简单返回mysql_query,amfphp 会处理这一切。 如果平台支持 (目前来说,Flash Remoting 和Flex Remoting), phpamf还可以处理循环引用和自定义数据。 它也支持简单的远程调试。还有amfphp 附带一个服务浏览器,它可以在创建客户端代码前测试远程服务。amfphp 1.0.1还添加了模板,可以自动生成客户端代码。Amfphp 1.9 beta更是新增了对AMF3的支持。详见http://www.riafan.com/article.asp?id=31

还有机会吗?你觉得呢?为她放弃那么多机会、错过那么多机会值得吗?

2010年03月09日 分类:玩蛋去

RT

Flex点滴(更新中)

2010年02月20日 分类:玩蛋去

1、HBox的子控件居右,示例代码:
    <mx:HBox>
      
<mx:Spacer width=”100%”/>
       <mx:Button/>
       <mx:Button/>
       <mx:Button/>
    </mx:HBox >

    参考资料:http://www.cnblogs.com/super_x/archive/2009/01/29/1381335.html

2、改变Menubar子项的背景色:

     <mx:MenuBar menuStyleName=”menubarcolor”  dataProvider=”{xmllist}”  labelField=”@id”/>

     添加样式时使用menuStyleName,而不是常规的styleName,其中“menubarcolor”为样式名。

     参考资料:http://bbs.blueidea.com/archiver/tid-2874998.html

3.用MXML标签给控件添加事件,示例:

   <mx:SetEventHandler target=”{linkbutton1}” name=”click” handler=”currentState=””/>

   参考资料:http://www.flashas.net/html/Flex/20070929/2182.html

4.MXML文件命名时不要使用ActionScript中的类名,例如Alert.mxml,MXML最终解析为ActionScript类

5.Panel等容器的paddingLeft等属性值不可为百分值

6.MXML中换行用“\n”

7.DataGrid绑定数据源某一集合时,测试得集合大小大于0,但无数据显示;原因:集合声明处未标注”[Bindable]”

8.切换页面状态时,要写状态的name值,而非id

 

   txtipt_username.includeInLayout=false;

14.AdvancedDataGrid中去掉表头中的竖线,参考资料http://bbs.airia.cn/FLEX/thread-7365-1-9.aspx

15.css to swf无法生成swf文件,原因:sdk的问题,项目中包含的swc的sdk不一致

16.HTTPService缓存问题—在访问地址后加入事件值,改变访问地址,参考资料http://blog.csdn.net/dream8062/archive/2009/04/02/4042317.aspx

17.FileReference.save()方法找不到?参考资料http://www.javaeye.com/topic/440464

9.过滤文本中的html标签,使用文本标签的htmlText属性替换text属性  

13.隐藏控件<mx:TextInput id=”txtipt_username” />需设置两个属性:

   txtipt_username.visiable=false;

10.页面间的跳转

    var urlreq:URLRequest= new URLRequest(url);
    flash.net.navigateToURL(urlreq,”_self”);

11.日期格式化时年月日 时分秒的表示—YYYY-MM-DD HH:NN:SS

12.设置下拉框默认项,比如常见的“–请选择–”,使用该控件的prompt属性

flex RemoteObject 属性详解

2010年01月19日 分类:玩蛋去

<mx:RemoteObject>标记允许使用AMF3访问远程服务类的方法,要知道在Flex中怎样使用Flash Remoting访问数据 ,应该先了解一下RemoteObject类。

要知道在Flex中怎样使用Flash Remoting访问数据 ,应该先了解一下RemoteObject类。

包 mx.rpc.remoting
类 public dynamic class RemoteObject
继承 RemoteObject→AbstractService→Proxy→Object
子类 RemoteObject

一、<mx:RemoteObject>标记

它允许使用AMF3访问远程服务类的方法。

1. <mx:RemoteObject>允许的标记属性有:

<mx:RemoteObject
  Properties
  concurrency="multiple|single|last"
  destination="No default."
  id="No default."
  endpoint="No default."
  showBusyCursor="false|true"
  source="No default." (currently, Macromedia ColdFusion only)
  makeObjectsBindable="false|true"

  事件
  fault="No default."
  result="No default."
 />

2. <mx:RemoteObject>标记可以包含多个 <mx:method> 标记,<mx:method>允许的标记属性有:

<mx:method
  Properties
  concurrency="multiple|single|last"
  name="No default, required."
  makeObjectsBindable="false|true"

 事件
  fault="No default."
  result="No default."
 />

3. <mx:RemoteObject>标记可以也只能包含一个<mx:arguments> 子标记 ,该子标记是一个序列数组对象。

二、公有属性

1. concurrency : String

表示对同一服务怎样进行多次调用。类似于XMLConnector/WebServiceConnector/RemotingConnector的multipleSimultaneousAllowed属性。它的默认值为multiple,允许下列值:

  • Multiple:同一时间可以执行多个请求。已有的请求不会被取消;
  • Single:同一时间调用只能执行一个请求,多个请求会报错;
  • Last:最后一次请求会覆盖已有的请求。

2. endpoint: String

允许开发人员快速为RemoteObject destination(目的地)指定endpoint(终点)。而该destination既没有在编译时,也没有在用代码新建ChannelSet(信道设置)时参照services-config.xml。如果设定了该属性,它会覆盖已有的ChannelSet。

如果endpoint 的url 以 “https” 开关,将使用 SecureAMFChannel, 否则使用普通的AMFChannel。{server.name}和{server.port}标记,可以用在endpoint的url中,表明Channel应该使用用来加载SWF文件的服务名称和端口。

3. showBusyCursor : Boolean

表示服务正在执行时是否显示一个表示忙碌的鼠标指针。

三、公有方法

1. RemoteObject () 构造方法

创建一个新的RemoteObject对象。

参数

destination:String (默认为 null) —RemoteObject 的destination属性必须匹配 services-config.xml 中的destination的ID属性值。

2. initialized ()

public function initialized(document:Object, id:String):void

只要设定RemoteObject标记就会通过MXML编译器自动调用该方法。如果使用ActionScrip新建RemoteObject实例,则可以自行调用该方法,这对验证其参数很有用。

参数

  • document:Object —RemoteObject 所在的MXML文档
  • id:String —RemoteObjec在上述文档中的ID

flex基础标签

2009年12月28日 分类:玩蛋去

Application (应用程序)类
Panel (面板)容器
Script (脚本)元素
Array (数组)元素
Object (对象)元素
Label (标签)元素
Text (文本框)元素
Button (按钮)控件
ComboBox (下拉列表)控件
List (列表)控件
一个ActionScript函数

药还真是个没用的东西!!!

2009年12月09日 分类:玩蛋去

RT

一到晚上,就和吃了安非他命一样兴奋,我得整点安眠药了…

2009年12月07日 分类:玩蛋去

RT

我就像只充满气的气球,就要炸开了…

2009年11月24日 分类:玩蛋去

RT

走吧,走了就没烦恼了!

2009年11月19日 分类:玩蛋去

给我一个月时间,我会离开这里!

欢迎大城主大驾光临!

2009年11月16日 分类:玩蛋去

RT
大城主很激动吧!!!