尝试在PHP文件中调用方法时出现ActionScript错误

尝试在PHP文件中调用方法时出现ActionScript错误,php,actionscript,Php,Actionscript,我一直在网上学习flash教程,并创建了一个简单的flash界面。我试图通过PHP文件和显示器从我的SQL数据库中检索数据。我在编译时遇到以下错误: 错误#1009:无法访问空对象引用的属性或方法 var variables1:URLVariables = new URLVariables(); var varSend1:URLRequest = new URLRequest("databaseCall.php"); varSend1.method = URLRequestMethod.POST

我一直在网上学习flash教程,并创建了一个简单的flash界面。我试图通过PHP文件和显示器从我的SQL数据库中检索数据。我在编译时遇到以下错误:

错误#1009:无法访问空对象引用的属性或方法

var variables1:URLVariables = new URLVariables();
var varSend1:URLRequest = new URLRequest("databaseCall.php");
varSend1.method = URLRequestMethod.POST;
varSend1.data = variables1;

var varLoader1:URLLoader=new URLLoader();
varLoader1.dataFormat = URLLoaderDataFormat.VARIABLES;
varLoader1.addEventListener(Event.COMPLETE,completeHandler1);

variables1.comType = "requestEntries";

varLoader1.load(varSend1);

function completeHandler1(event:Event):void{

if(event.target.data.returnBody ==""){
    gbOutput_txt.text = "No data coming through";
} else{
    gbOutput_txt.condenseWhite = true;
    gbOutput_txt.htmlText = "" +event.target.data.returnBody;
}
}
我的代码与教程中使用的代码完全匹配。我修改了php文件,只返回“”,所以问题几乎肯定在操作脚本中……我认为:当调用completeHandler1函数时,编译器会崩溃。你认为这是什么原因造成的


提前感谢。

您需要先声明completeHandler1函数,然后再尝试在其他任何地方使用它

下面是修改后的代码,用于描述我所说的内容

var variables1:URLVariables = new URLVariables();
var varSend1:URLRequest = new URLRequest("databaseCall.php");
varSend1.method = URLRequestMethod.POST;
varSend1.data = variables1;

function completeHandler1(event:Event):void{

    if(event.target.data.returnBody ==""){
        gbOutput_txt.text = "No data coming through";
    } else{
        gbOutput_txt.condenseWhite = true;
        gbOutput_txt.htmlText = "" +event.target.data.returnBody;
    }

}

var varLoader1:URLLoader=new URLLoader();
varLoader1.dataFormat = URLLoaderDataFormat.VARIABLES;
varLoader1.addEventListener(Event.COMPLETE,completeHandler1);

variables1.comType = "requestEntries";

varLoader1.load(varSend1);

尝试一下,让我知道它是否有效。

共享原始教程链接可能会有所帮助。您好,谢谢您的回复。这似乎并没有解决问题。下面是错误消息:TypeError:error#1009:无法访问null对象引用的属性或方法。在佛罗里达州AS3_Adam_MySQL_Guestbook_fla::Estimational_1/completeHandler1()[AS3_Adam_MySQL_Guestbook_fla.Estimational_1::frame1:9]在flash.events::EventDispatcher/dispatchEventFunction()在flash.net::URLLoader/onComplete()上的EventDispatcher/dispatchEvent(),我想我知道问题是什么。处理程序中引用的
gbOutput\u txt
对象为空,因为它的作用域未正确设置。如果可能,通过
事件
对象访问对象,尝试改变引用该对象的方式。您可能需要进行一些调试,以确定事件对象(如果它存在于其中)中可以从中引用的位置。否则,您必须创建一个自定义事件类,您可以通过该类传递该对象,以便在事件处理程序中使用。您好,再次感谢。我明白你的意思。我会在考虑你的意见后再试一次。这让我很困惑,因为我一直在看的教程与视频中成功编译的代码完全相同。奇怪。谢谢