来自 MySQL 的 XML 数据
Posted
技术标签:
【中文标题】来自 MySQL 的 XML 数据【英文标题】:XML data from MySQL 【发布时间】:2013-06-17 11:35:25 【问题描述】:我正在尝试在 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
?>
【问题讨论】:
鉴于第 33 行是“?>”,并且没有第 27 列,那么您实际上在哪里得到了这段代码中的错误? 只是为了抢占复制粘贴的cmets关于mysql.*
的邪恶,OP可以免费使用他喜欢的任何功能
@Mike'Pomax'Kamermans 是的......正是这个代码......:S
【参考方案1】:
不知道它实际上在哪里标记错误,我猜这是因为您正在服务text/xml
,但您返回的数据不是有效的 XML。 XML 文档在文档数据之前需要一个 xml 版本指示符 (<?xml version="1.0"?>
) 和一个文档类型 (<!doctype ......>
)。看起来您正在跳过该部分并直接跳转到由 CDUsers
元素组成的 XML 片段。
【讨论】:
以上是关于来自 MySQL 的 XML 数据的主要内容,如果未能解决你的问题,请参考以下文章
在 Spark 的嵌套 XML 中为来自父数据框的子数据框添加额外的列