我试图将我的php中的json加载到flash中。它有效,但我有点问题。我想发送一个GET方法发布到PHP。如果我更改了代码中的jsurl
位,则可以正常工作,但当我将其更改为此"http://localhost/Omega/common/flash.php?AppID="+ AppID +"&&formid="+FormID;
时,它不再有效。
var temp:Object;
var loader:URLLoader = new URLLoader();
var jsurl:String;
if(myLoaderInfo.loaderComplete){
jsurl = "http://localhost/Omega/common/flash.php?AppID="+ AppID +"&&formid="+FormID;
loader.load(new URLRequest(jsurl));
loader.addEventListener(Event.COMPLETE, completeHandler);
}
在我的php文件中,我有这样的事情:
if(isset($_GET['AppID']) && isset($_GET['formid'])){
$id = $_GET['AppID'];
$uni = $_GET['formid'];
}else{
$id = "SOS-00002";
$uni = "UNI-00002";
}
$q = sprintf("SELECT * FROM UNI WHERE UNI.studentid= %s AND UNI.uni_id= %s", GetSQLValueString($id, "text"),GetSQLValueString($uni, "text"));
$rs = mysql_query($q);
$var = mysql_fetch_assoc($rs);
sendResponse(200, json_encode($var));
return true;
我还指定了将params传递给我的.swf文件,如下所示:
<param name="movie" value="WebForm.swf?AppID=<?php echo $_GET['AppID']; ?>&&FormID=<?php echo $_GET['FormID']; ?>&&resultsArray=<?php fillFlashData($_GET['AppID'], $_GET['FormID']); ?>" />
答案 0 :(得分:0)
终于解决了。看起来我没有在Flash中调用变量AppID
和FormID
我正在Flash中加载我的变量:
var AppID, FormID;
var resultsArray:Object;
function loaderComplete(myEvent:Event)
{
this.myParams=this.loaderInfo.parameters;
this.myParamsLoaded=true;
this.useParams();
}
function useParams()
{
AppID=this.myParams.AppID;
FormID=this.myParams.FormID;
resultsArray=this.myParams.resultsArray;
}
将其更改为:
var paramObj:Object = LoaderInfo(this.root.loaderInfo).parameters.AppID;
var paramObj1:Object = LoaderInfo(this.root.loaderInfo).parameters.FormID;
jsurl = "http://localhost/Omega/common/flash.php?AppID="+ paramObj.toString() +"&&formid="+paramObj1.toString();
loader.load(new URLRequest(jsurl));
loader.addEventListener(Event.COMPLETE, completeHandler);
现在它完美无缺。