我想显示来自mysql数据库的所有数据并使用xml格式。但它显示错误消息“第205行第2行的错误:文档末尾的额外内容” 怎么解决它?
<?php
extract($_REQUEST);
include ('connect.php');
if ($result_no = $conn->query("SELECT * FROM enxml")){
while ($row_no = $result_no->fetch_object()){
$xml = '';
$xml .= '<stationList>';
$xml .= '<station no="' . $row_no->no . '">' ;
$xml .= '<location>'. $row_no->location .'</location>';
$xml .= '<lat>'.$row_no->lat.'</lat>';
$xml .= '<lng>'.$row_no->lng.'</lng>';
$xml .= '<type>'.$row_no->type.'</type>';
$xml .= '<districtL>'.$row_no->districtL.'</districtL>';
$xml .= '<districtS>'.$row_no->districtS.'</districtS>';
$xml .= '<address>'.$row_no->address.'</address>';
$xml .= '<provider>'.$row_no->provider.'</provider>';
$xml .= '<parkingNo>'.$row_no->parkingNo.'</parkingNo>';
$xml .= '<img>'.$row_no->img.'</img>';
$xml .= '</station>';
$xml .= '</stationList>';
header("Content-Type:text/xml");
echo $xml;
}
}
?>
答案 0 :(得分:0)
xml中应该只有一个根元素。你现在有很多。在<stationList>
循环后移动while
echo
循环和while
xml:
$xml = '';
$xml .= '<stationList>';
while ($row_no = $result_no->fetch_object()){
$xml .= '<station no="' . $row_no->no . '">' ;
$xml .= '<location>'. $row_no->location .'</location>';
$xml .= '<lat>'.$row_no->lat.'</lat>';
$xml .= '<lng>'.$row_no->lng.'</lng>';
$xml .= '<type>'.$row_no->type.'</type>';
$xml .= '<districtL>'.$row_no->districtL.'</districtL>';
$xml .= '<districtS>'.$row_no->districtS.'</districtS>';
$xml .= '<address>'.$row_no->address.'</address>';
$xml .= '<provider>'.$row_no->provider.'</provider>';
$xml .= '<parkingNo>'.$row_no->parkingNo.'</parkingNo>';
$xml .= '<img>'.$row_no->img.'</img>';
$xml .= '</station>';
}
$xml .= '</stationList>';
header("Content-Type:text/xml");
echo $xml;