将数组从Php传递到AS3时出错

将数组从Php传递到AS3时出错,php,arrays,actionscript-3,flash,actionscript,Php,Arrays,Actionscript 3,Flash,Actionscript,我是AS3新手,我曾尝试过几次将数组从php传递到AS3。但是我做不到。 但是我设法把问题缩小到了一组代码,所以我想知道我需要做什么来改变它 什么时候函数是这个 function Asandler(event:Event){ var responseVariables:URLVariables = new URLVariables(event.target.data); nobed = responseVariables.nobed ; zip

我是AS3新手,我曾尝试过几次将数组从php传递到AS3。但是我做不到。 但是我设法把问题缩小到了一组代码,所以我想知道我需要做什么来改变它

什么时候函数是这个

function Asandler(event:Event){


var responseVariables:URLVariables = new URLVariables(event.target.data);
           nobed = responseVariables.nobed ;
            zip = responseVariables.zip;
           Location = responseVariables.Location;
            price = responseVariables.price;
           } 
它返回一个错误#2101:传递给URLVariables.decode()的字符串必须是包含名称/值对的URL编码查询字符串

但是当我把它改成

function Asandler(event:Event){


    s1.test.text=event.target.data
               } 
它在动态文本字段中显示数组,没有问题

php回显部分

 $solutions = array();

        while ($row = mysqli_fetch_assoc($sql))
        {

            echo "nobed=".$solutions[1]=$row['nobed'];
        echo "&zip=".$solutions[2]=$row['zip'];
      echo "&Location=".$solutions[3]=$row['Location'];
      echo "&price=".$solutions[4]=$row['price'];


        }
测试数据字符串

nobed=100&zip=100&Location=100&price=100
新的尝试,测试它与动态文本字段,它显示整个字符串

var receivedValue:String = event.target.data.replace(/^\s+|\s+$/mg, "");
var test:Array = receivedValue.split(",");

s1.test.text =test[0];

但不太确定如何把绳子分开

您可以发布实际生成的字符串的外观吗?您没有在服务器端对其进行编码,因此我怀疑这是一个未编码字符问题。此外,如果您有超过1行,您将得到一个无效字符串,原因有两个:price的结尾和nobed的开头将没有分隔符,并且密钥将重复。好的,我现在就把它放在答案中,但是错误发生在我输入任何内容之前。当页面刚刚加载时,会立即弹出错误2101。那么字符串是否完全为空?也可能不是这样。只需在代码之前添加一个快速检查,以确保它不是空的。测试数据应该可以。我只能假设它与您想象的不同(例如,包含换行符、错误消息、BOM表等)