有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

使用php for java创建Web服务(XML)

我试图编写一个php脚本,导出数据库并将内容打印为XMl。所以我有这个

<?php
require('connect.php');

$query = mysql_query("SELECT * FROM blog_comments");
$database="MyWebsite";
$table = "blog_comments";
echo mysql_error();


echo "<?xml version=\"1.0\" encoding=\"utf-8\" ?>";

echo "<$database>";
$i=0;
while($row=mysql_fetch_assoc($query))
{
    echo "<$table>";
            while ($i < mysql_num_fields($query))
            {
                $meta = mysql_fetch_field($query);
                echo "<".$meta->name.">".$row['$meta->name']."</".$meta->name."><br/>";
                $i++;
            }
            $i=0;
    echo "</$table>";
}

echo "</$database>";


?>

我的输出是

<?xml version="1.0" encoding="utf-8" ?>
<MyWebsite>
<blog_comments>
    <></>
    <></>
    <></>
    <></>
    <></>
    <></>
    <></>
    <></>
</blog_comments>
<blog_comments>
    <></><></><></><></><></><></><></><></>
</blog_comments>
<blog_comments> 
    <></><></><></><></><></><></><></><></>
</blog_comments>
<blog_comments>
    <></><></><></><></><></><></><></><></>
</blog_comments>
<blog_comments>
    <></><></><></><></><></><></><></><></>
</blog_comments>
<blog_comments>
    <></><></><></><></><></><></><></><></>
</blog_comments>
<blog_comments>
    <></><></><></><></><></><></><></><></>
</blog_comments>
<MyWebsite>

所有内容的编号都是正确的,但由于某些原因,我没有打印这些值。我这样做是因为我的网站主机不允许远程数据库连接,我需要从java应用程序连接到数据库。所以我想从我的java应用程序调用一个php页面,它将用包含我的数据的xml响应,然后我解析这个xml并使用相关数据

我需要帮助如何使这项工作,以便我能实现上述目标。。谢谢 非常感谢


共 (1) 个答案

  1. # 1 楼答案

    我不是肯定的,但我认为mysql_fetch_assoc基本上是在“烧掉”你的查询结果,对于同一个查询,你不能先调用它。但是,您不需要获取所有字段信息。如果您只需要名称,只需使用:

    echo "<{$table}>";
    foreach($row as $key => $val){
        echo "<{$key}>{$val}</{$key}>";
    }
    echo "</{$table}>";