【发布时间】:2014-01-02 19:04:37
【问题描述】:
我想使用这个脚本来生成 Xml 文件,首先它运行良好,但我不知道为什么我不能使用它
require 'dbconfig.php';
$qr = 'SELECT * FROM pharmacie ';
$res = mysql_query($qr);
#res to array
while ($datas = mysql_fetch_assoc($res)) {
$result[] = array(
'nom' => $datas['nom'],
'prenom' => $datas['prenom'],
'adresse' => $datas['adresse'],
'type' => $datas['type'],
'phone' => $datas['phone'],
'fax' => $datas['Fax'],
'email' => $datas['Email'],
'ville' => $datas['Ville'],
'region' => $datas['Region'],
);
}
header("Content-Type:text/xml");
?>
<?xml version="1.0" encoding="ISO-8859-1"?>
<people>
<?php foreach ($result as $v) : ?>
<person>
<nom><? = $v['nom']; ?></nom>
<prenom><? = $v['prenom']; ?></prenom>
<adresse><? = $v['adresse']; ?></adresse>
<typeph><? = $v['type']; ?></typeph>
<phone><? = $v['phone']; ?></phone>
<phone><? = $v['fax']; ?></phone>
<email><? = $v['email']; ?></email>
<region><? = $v['region']; ?></region>
<ville><? = $v['ville']; ?></ville>
</person>
<?php endforeach; ?>
</people>
我收到了这条消息 此页面包含以下错误:
第 2 行第 1 列的错误:文档末尾的额外内容 下面是出现第一个错误之前的页面渲染。
我该如何修复它
【问题讨论】:
-
为什么先是 while 循环,然后是 foreach 循环?您不能只使用第一个 while 循环来创建您的 XML 元素吗?
-
向我们展示它正在输出的 XML。
-
尝试
echo '<?xml version="1.0" encoding="ISO-8859-1"?>而不仅仅是<?xml version="1.0" encoding="ISO-8859-1"?>(PHP 短标签可能会导致问题)。 -
@putvande 他在那一行的正上方有一个 PHP 结束标签 ;)