从 AS3 中删除我的数据库的数据


Delete a data of my database from AS3

我正在尝试使用 ActionScript 3 从数据库中删除数据。

我已经在我的服务器上创建了一个php:

<?php
include ("shared/connect.php");
$idToDelete   = $_POST['idToDelete'];
$result = mysqli_query($conn,"
DELETE  FROM `annoncesNew` WHERE id=$idToDelete");
?> 

然后我必须将变量idToDelete发送到这个 php 才能删除该条目。

所以我做了:

deleteBtn.addEventListener(MouseEvent.CLICK, deleteThisAnnonce);

function deleteThisAnnonce(event:MouseEvent):void { 
    trace("deleteThisAnnonce");
var variablesDelete:URLVariables = new URLVariables();
var varDelete:URLRequest = new URLRequest("http://www.***com/***/deleteAnnonce.php");
varDelete.method=URLRequestMethod.POST;
varDelete.data=variablesDelete;
var varLoaderDelete:URLLoader = new URLLoader;
varLoaderDelete.dataFormat=URLLoaderDataFormat.VARIABLES;
varLoaderDelete.addEventListener(Event.COMPLETE,completeHandlerDelete);
ValidateAndSendDelete();
function completeHandlerDelete(event:Event):void{
            trace("Data Sent");
}
function ValidateAndSendDelete():void{
        trace("deleting"+item.id);  //item.id is my the ID. When I trace the output is 144 so it's good.    
        variablesDelete.idToDelete = item.id;
        varLoaderDelete.load(varDelete);
    }
}   

因此,使用此代码,它应该删除id = 144的数据。但是单击deleteBtn时出现此错误:Error: Error #2101: The String passed to URLVariables.decode() must be a URL-encoded query string containing name/value pairs..

(所有跟踪都正常工作,但我的数据未删除)。

我已经通过更改DELETE FROM annoncesNew WHERE id=$idToDelete"来尝试我的php);withannoncesNew WHERE id=144");中删除并在我的网络浏览器上执行它,它有效(ID 为 144 的行已删除)。

奇怪的是,该行使用我的 AS3 代码删除(因此代码正常工作),但它还是抛出了此错误 2101。知道为什么吗?

感谢

我相信

问题不在于您的 AS3 代码,而在于您的 PHP 脚本没有将任何值返回给 Flash。尝试将其添加到您的 PHP 脚本中:

echo "Status=true";

在 AS3 中可能需要它:

varLoaderDelete.dataFormat = URLLoaderDataFormat.TEXT;