0

我试图在 xml 中显示 select 的结果。但是,当我列出带有 blob 图像的结果时,我收到以下错误:此页面包含以下错误:第 33 行第 27 列的错误:编码错误下面是页面的呈现直到第一个错误。

我不知道出了什么问题... MySQL 中的字段类型是 blob。

<?php
header('Content-type: text/xml');
 mysql_connect('localhost', 'root', 'test');mysql_select_db('test');


        if(isset($_GET['id']) && $_GET['id'] != '')
        {
            if($_GET['id'] == '0'){$sql = 'SELECT * FROM CDUsers';}
            else{$sql = 'SELECT * FROM cdusers WHERE id = '.$_GET['id'];}
        }

    $result = mysql_query($sql) or die(mysql_error());
    $num = mysql_num_rows($result);
    if($num != 0)
    {?>
        <CDUsers>
        <?php while($user = mysql_fetch_assoc($result))
                {?>
                    <user>
                    <id><?php echo $user['id'];?></id>
                    <name><?php echo $user['name'];?></name>
                    <surname><?php echo $user['surname'];?></surname>
                    <location><?php echo $user['location'];?></location>
                    <email><?php echo $user['email'];?></email>
                    <password><?php echo $user['password'];?></password>
                    <gender><?php echo $user['gender'];?></gender>
                    <foto><?php echo $user['foto'];?></foto>
                    <tipo><?php echo $user['tipo'];?></tipo>
                    </user>
        <?php   }//?>
        </CDUsers>
    <?php }else
                {?>
                    <CDUsers>
                    <user>
                    vazio
                    </user>
                    </CDUsers>
    <?php       }
?>
4

1 回答 1

0

在不知道它实际上在哪里标记错误的情况下,我猜这是因为您正在服务text/xml,但是您返回的数据不是有效的 XML。XML 文档在文档数据之前需要一个 xml 版本指示符 ( <?xml version="1.0"?>) 和一个 doctype ( <!doctype ......>)。看起来您正在跳过该部分并直接跳转到由CDUsers元素组成的 XML 片段。

于 2013-06-20T16:22:24.380 回答