Php Http send()请求不返回任何值

Php Http send()请求不返回任何值,php,mysql,actionscript-3,apache-flex,flex4.5,Php,Mysql,Actionscript 3,Apache Flex,Flex4.5,我想知道为什么我的更新没有填充本地Sqlite数据库。昨天,数据库中几乎没有记录,应用程序工作正常。今天又插入了10条记录。两个send方法似乎都工作正常,但它们不返回数据。它只更新IngredientDB,不更新RecipeID请求。这是我的更新动作脚本代码 dishName.addEventListener("Success", dishName_resultHandler); dishName.addEventListener("...", faultHandler); dishName

我想知道为什么我的更新没有填充本地Sqlite数据库。昨天,数据库中几乎没有记录,应用程序工作正常。今天又插入了10条记录。两个send方法似乎都工作正常,但它们不返回数据。它只更新IngredientDB,不更新RecipeID请求。这是我的更新动作脚本代码

 dishName.addEventListener("Success", dishName_resultHandler);
dishName.addEventListener("...", faultHandler);
dishName.send();
dishIngs.addEventListener("Success", ingredients_resultHandler);
dishIngs.addEventListener("...", faultHandler);
dishIngs.send();
protected function dishName_resultHandler(event:ResultEvent):void
{
externalRecipes=event.result.recipes.recipe;
}

protected function ingredients_resultHandler(event:ResultEvent):void{
externalIngredients=event.result.ingredients.ingredient;
}
这是我的第一个表的php脚本

$mysql_host = "...";
$mysql_database = "...";
$mysql_user = "...";
$mysql_password = "....";

$conn = mysql_connect("...", "...","...") or      die(mysql_error());
mysql_select_db("....", $conn);

$sql = 'SELECT * FROM `RecipeDB`';
$res = mysql_query($sql);

$xml = new XMLWriter();

$xml->openURI("php://output");
$xml->startDocument();
$xml->setIndent(true);

$xml->startElement('recipes');

while ($row = mysql_fetch_assoc($res)) {
$xml->startElement("recipe");

    $xml->writeElement('RecipeID', $row['RecipeID']);
    $xml->writeElement('Name', $row['Name']);
    $xml->writeElement('Category', $row['Category']);
    $xml->writeElement('Origin', $row['Origin']);
    $xml->writeElement('Recipe', $row['Recipe']);
    $xml->writeElement('Favorite', $row['Favorite']);
    $xml->writeElement('Image', base64_encode($row['Image']));



$xml->endElement();
}

$xml->endElement();

$xml->flush();
和第二个相似

$conn = mysql_connect("...", "..","...") or die(mysql_error());
mysql_select_db("....", $conn);

$sql = 'SELECT * FROM `IngredientDB`';
$res = mysql_query($sql);

$xml = new XMLWriter();

$xml->openURI("php://output");
$xml->startDocument();
$xml->setIndent(true);

$xml->writeRaw('<?xml version="1.0"?>');
$xml->startElement('ingredients');

while ($row = mysql_fetch_assoc($res)) {
$xml->startElement("ingredient");

    $xml->writeElement('rowid', $row['rowid']);
    $xml->writeElement('RecipeID', $row['RecipeID']);
    $xml->writeElement('Ingredient', $row['Ingredient']);
    $xml->writeElement('Quantity', $row['Quantity']);



$xml->endElement();
}

您是如何配置Web服务器的?可能是脚本中的php错误,您没有得到答案,因为服务器或mayeb php配置为不显示错误

你检查过错误日志了吗?您还可以尝试直接执行php文件,而不是通过Flash执行,以确保URL是正确的,并且答案格式正确


希望这有帮助

那么它是sqlite还是mysql呢?不返回任何值的确切含义是什么?您的Web主机似乎将google分析代码添加到php输出中。您是否使用Flash内容调试器插件?它是否抱怨XML格式不正确?顺便说一句,您应该从代码示例中删除数据库详细信息…数据库是mysql。并且不返回任何值这意味着不向externalRecipes和ExternalElements ArrayCollection分配任何值通过它们预先初始化的方式显示没有错误文档xml格式正确,问题似乎是将值从xml文件复制到ArrayCollection。问题是将xml解析发送到diviace或将值复制到ArrayCollection
 <s:HTTPService id="dishName"
 url="http://.../dish.php"
 result="dishName_resultHandler(event)"
 fault="faultHandler(event)"/>

 <s:HTTPService id="dishIngs"
 url="http://.../Ingedient.php" 
 result="ingredients_resultHandler(event)"
 fault="faultHandler(event)"/>
CREATE TABLE `RecipeDB` (
`RecipeID` int(5) NOT NULL AUTO_INCREMENT,
`Name` varchar(20) COLLATE latin1_general_ci NOT NULL,
`Category` varchar(20) COLLATE latin1_general_ci NOT NULL,
`Origin` varchar(20) COLLATE latin1_general_ci NOT NULL,
`Recipe` varchar(2000) COLLATE latin1_general_ci NOT NULL,
`Favorite` tinyint(1) NOT NULL,
`Image` blob NOT NULL,
 PRIMARY KEY (`RecipeID`)
)

CREATE TABLE `IngredientDB` (
`rowid` int(5) NOT NULL AUTO_INCREMENT,
`RecipeID` int(5) NOT NULL,
`Ingredient` varchar(20) COLLATE latin1_general_ci NOT NULL,
`Quantity` varchar(100) COLLATE latin1_general_ci NOT NULL,
 PRIMARY KEY (`rowid`)
)