使用PHP脚本的Flash LoadVars

时间:2010-07-06 11:33:38

标签: php flash actionscript-2 flash-cs5

我有一个flash动画,我需要从PHP脚本中读取一个值,以便设置它从哪个帧开始,我使用以下代码:

if (loaded == total) {
        var lvContent = new LoadVars();
        lvContent.load("http://MY URL/Includes/getID.php");             
        trace("Who: " + lvContent.pageID);       
        lvContent.onLoad = function() {
            if (lvContent.pageID != "29") { //If it's the home page then play the full animation. If not .. don't.
                _root.gotoAndPlay(2);

            }else{
                _root.gotoAndPlay(90);
            }
        }      
    }

问题是这不起作用 - 它不会进入加载事件。如果我手动运行PHP,我会得到“& pageID = 29”。如果我在本地调试它,我会在跟踪输出窗口中得到“Who:undefined”。从我读过的所有例子中,我似乎正确地做了这个,但它似乎没有起作用。

Flash:CS5使用Actionscript 2.0

有人可以看看,让我知道我哪里出错吗?

提前致谢。

2 个答案:

答案 0 :(得分:3)

您在加载内容后定义了onLoad事件。我认为这不起作用。

尝试

if (loaded == total) {
        var lvContent = new LoadVars();

        lvContent.onLoad = function() {
            if (lvContent.pageID != "29") { 
        //If it's the home page then play the full animation. If not .. don't.
                _root.gotoAndPlay(2);

            }else{
                _root.gotoAndPlay(90);
            }
        }    
        lvContent.load("http://MY URL/Includes/getID.php");             
        trace("Who: " + lvContent.pageID);        
    }

答案 1 :(得分:3)

您在加载之前跟踪pageID;试试这个

var lvContent = new LoadVars();
lvContent.onLoad = function(success:Boolean) {
  if(!success) {
    trace("Failed to load");
    return;
  }
  trace("Who: " + lvContent.pageID);//trace from the onLoad handler
  if (lvContent.pageID != "29") 
    _root.gotoAndPlay(2);
  else
    _root.gotoAndPlay(90);
}
lvContent.load("http://MY URL/Includes/getID.php");