在游戏中记录下玩家的得分,然后将得分排序是经常的事情,这就涉及到Flash游戏与后台之间的通信问题了。Flash能与任何后台语言进行通信,比如ASP,PHP,JSP,Perl,Java等。这里介绍一下Flash与PHP及ASP通信的方法。
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/fjc/)5.2.1 在Flash 5中有load外部变量的语句loadVariablesNum与loadVariables具有完成从动画的外部或者后台程序中取得变量值的功能。实际上它先调用一个URL,这个URL如果有输出,就把输出的内容传到Flash中。请看下面PHP语言的例子:
_root.now_url = url+"dispscore.php?buf="+getTimer();
loadVariablesNum (now_url, 0, "POST");
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/fjc/)dispscore.php程序内容:
<?
$disp_score = "myscore=500";
$disp_name = "name=dongua";
echo "$disp_score$disp_name&score_ret=1";
?
这里就返回了一个得分与用户名称,同时也返回了一个score_ret=1。这个变量的作用就是标志所有要返回的内容已经全部返回结束,在Flash中只需检查它就知道数据有没有返回;GetTimer()的作用是为了调试方便,因为IE有缓存,如果不每次再加一个随机内容,就有可能直接从缓存中读取数据了。请再看ASP的如下代码。
_root.now_url = url+"./score.asp?buf="+getTimer();
loadVariablesNum (now_url, 0, "POST");
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/fjc/)score.asp程序代码如下:
<%
response.write "name=dongua"
response.write "&my_score=400”
response.write "&score_ret=1"
%
这仅仅是一种理论上的代码,实际操作过程中还要有循环等待时间,以便程序有足够的时间来与后台交换数据,一般来说15s<