gpt4 book ai didi

php - #2101 : The String passed to URLVariables. decode() 必须是包含名称/值对的 URL 编码查询字符串

转载 作者:行者123 更新时间:2023-12-02 22:35:36 24 4
gpt4 key购买 nike

我有这个闪存代码。它将我游戏中的分数和用户名发送到 savescores.php。但是我有上面的错误。我已将 URLLoaderDataForma.VARIABLES 更改为 TEXT 但仍然出现相同的错误。我应该怎么做才能解决这个问题?提前致谢..

private function SendScore(score:int) 
{
var variables:URLVariables = new URLVariables();
variables.score = score;
variables.username = username;
var urlloader:URLLoader = new URLLoader();

var urlrequest:URLRequest = new URLRequest('http://localhost:90/savescores.php');
urlrequest.method = URLRequestMethod.POST;
urlrequest.data = variables;
urlloader.dataFormat = URLLoaderDataFormat.TEXT;

urlloader.load(urlrequest);
urlloader.addEventListener(Event.COMPLETE, CompleteHandler, false, 0, true);
urlloader.addEventListener(IOErrorEvent.IO_ERROR , ErrorHandler, false, 0, true);
}

private function CompleteHandler(e:Event)
{
var vars:URLVariables = new URLVariables(e.target.data);
if(vars.success) trace('Saving succeeded');
else ('Saving failed');
}

private function ErrorHandler(e:IOErrorEvent)
{
trace('Error occured');
}

最佳答案

回答:问题出在 PHP

-- 您必须向 AS3 返回一个 var,否则您将收到此错误。

我发布这个是因为除非观众阅读评论,否则他们不会知道问题是什么以及解决方案。提出这个问题的 Anil 说这是 PHP 而不是 as3 的问题,但没有给出原因。上面标记为正确的答案似乎不是一个充分的答案,因为它只提出了一个可能的解决方案。 Anil 承认这是 php 的问题。我相信这个答案更完整,可以帮助遇到同样问题的人。

我遇到了类似的问题。问题出在 php.ini 上。除非你从 php 输出一些东西,否则你会得到这个错误。

Flash 不喜欢从 php 返回任何内容,并给出了以下错误:

错误:错误 #2101:传递给 URLVariables.decode() 的字符串必须是包含名称/值对的 URL 编码查询字符串。 在错误$/throwError() 在 flash.net::URLVariables/decode() 在 flash.net::URLVariables() 在 flash.net::URLLoader/onComplete()

这是我的 PHP 的一部分,没有返回任何内容:

if($ConfirmedEmail=="true")
{
echo "Status=true";
}
if($ConfirmedEmail=="false")
{
echo "Status=false";
}

但如果它既不是真/假,它也不会输出任何内容。 = Flash 不喜欢!

所以 PHP 代码必须是这样的:

if($ConfirmedEmail=="true")
{
echo "Status=true";
}
else if($ConfirmedEmail=="false")
{
echo "Status=false";
}
else
{
echo "Status=Nada";
}

这是我的 AS3 代码供您查看。希望它能帮助别人。

public function checkEmail(e:Event = null)
{

var urlreq = new URLRequest("http://www.MyWebsite.com/myScript.php");
urlreq.method = URLRequestMethod.POST;

var urlvars = new URLVariables();
urlvars.userID = Main.userID;


urlreq.data = urlvars;

var loader:URLLoader = new URLLoader(urlreq);
loader.addEventListener(Event.COMPLETE, completed);
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
loader.load(urlreq);
}

public function completed(event:Event):void
{
var variables:URLVariables = new URLVariables(event.target.data);
trace("Email Confirmed: " + variables.Status);
}

关于php - #2101 : The String passed to URLVariables. decode() 必须是包含名称/值对的 URL 编码查询字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11500974/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com