从PHP中创建MySQL查询时的XML结构(另一个)

时间:2014-08-26 22:36:21

标签: php xml

我最近问了这个问题, XML structure while creating from MySQL query in PHP。我得到了我需要的答案,但现在我有一个类似的案例,只缺少一件事。

我复制了代码并根据需要进行了更改,但类别行无效。

这是我的代码

$xml2 = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
$xml2 .= "\r\n";
$xml2 .= "<resources>";
$xml2 .= "<version>1</version>";
$xml2 .= "\r\n";

//select all items in table
$sql2 = "SELECT distinct category, name FROM user where user = '$user' and category is not null order by category";

$result2 = mysql_query($sql2);
if (!$result2) {
    die('Invalid query: ' . mysql_error());
}

if(mysql_num_rows($result2)>0){

    while($row2 = mysql_fetch_assoc($result2)){

        if(!isset($previousRow2) || !isset($previousRow2["category"]) || $previousRow2["category"] != $row2["category"])
        {
            $xml2 .= "\r\n";
            $xml2 .= "<category title=\"" . $row["category"] . "\" />\r\n";
        }
        $xml2 .= "<item drawable=\"";

        $xml2 .= $row2["name"];

        $xml2 .= "\" />";
        $xml2 .= "\r\n";


        $previousRow2 = $row2;
    }
}

$xml2 .= "</resources>";

这是输出

<category title="" />
<item drawable="bigdx_clean" />

<category title="" />
<item drawable="bluetooth" />
<item drawable="bluetooth_audio" />
<item drawable="browser" />
<item drawable="calculator" />
<item drawable="calendar" />
<item drawable="call_history" />
<item drawable="camera" />

虽然标题是空白的。

我正在使用与其他问题相同的工作代码概念。这是一个不同的查询,所以我一定有问题吗?

  $xml2 .= "<category title=\"" . $row["category"] . "\" />\r\n";

1 个答案:

答案 0 :(得分:1)

您正在访问$row["category"],但此变量未在任何位置定义。您的意思是$row2吗?

对于它的价值,$row2不是变量的描述性名称。如果您正在寻找另一个变量名称,因为$row被采用,您可能需要将其移动到另一个函数中,其中$row将是本地的吗?

如果您(无意中)访问了不存在的变量,则很可能在本地PHP配置中禁用了屏幕上的错误。最好打开它们以帮助您的开发过程 - 您将在php.ini配置中找到该设置。