通过php将多个值传递给flash

通过php将多个值传递给flash,php,flash,Php,Flash,这是密码 <php? $id1 =1; $id2 = "module 1 loaded"; echo "$var1=$id1","$var2=$id2"; ?> 我知道这是不正确的,如果你想创建一个脚本,输出可以加载的数据,或者你需要这样的东西,我如何将这两个变量传递给flash //set up your values $vars=array(); $vars['foo']='bar'; $vars['xyz']='123'; //output header

这是密码

<php?  
$id1 =1;
$id2 = "module 1 loaded";
echo "$var1=$id1","$var2=$id2";
?>


我知道这是不正确的,如果你想创建一个脚本,输出可以加载的数据,或者你需要这样的东西,我如何将这两个变量传递给flash

//set up your values 
$vars=array();
$vars['foo']='bar';
$vars['xyz']='123';

//output     
header ("Content-Type: application/x-www-urlformencoded");
$sep="";
foreach($vars as $name=>$val)
{
    echo $sep.$name."=".urlencode($val);
    $sep="&";
}
如果您的PHP版本支持此功能,则更容易:

$vars=array();
$vars['foo']='bar';
$vars['xyz']='123';

header ("Content-Type: application/x-www-urlformencoded");
echo http_build_query($vars);

它不应该是查询字符串的形式吗:

echo $var1.'='.$id1.'&'.$var2.'='.$id2;

确保键和值是URL编码的。

Paul Dixon的代码剪贴是PHP端需要的。以下是flash部分:

myVars = new LoadVars(); 
myVars.load("http://localhost/foo.php");

myVars.onLoad = function (success) {
     if (success) {
        for( var attr in this ) {
            trace (" key " + attr + " = " + this[attr]); 
        }
    } else {
        trace ("LoadVars Error"); 
    }
}
注意,您需要用应用程序所需的任何内容替换循环逻辑。

PHP代码:

<?php

echo http_build_query( array(
     'var1' => 1
    ,'var2' => 'module 1 loaded'
));
<php?  
$id1 =1;
$id2 = "module 1 loaded";

print "&var1=$id1";
print "&var2=$id2";

?>

我确信这会起作用…

闪存代码:

btn.onPress = function(){

   testLoadVars = new LoadVars();

   testLoadVars.onLoad = function(success){

      if(success){
         trace(testLoadVars.var1);
         trace(testLoadVars.var2);
      }
      else
         trace("error");
   }
   testLoadVars.sendAndLoad("http://localhost/filename.php?uniqueID=" +  getTimer(),testLoadVars,"POST");

}

就这些。。遇到任何问题???

您需要更具体一点。你的代码示例没有意义,你也没有真正解释你自己。我刚刚编辑了我的文章,我的问题是我需要做什么来分离var1和var2,以便在flash中将它们视为两个独立的值。我仍然认为http_build_query()比这样做容易得多。