“XML Parsing Error: junk after document element"

2022-01-10 00:00:00 xml-parsing php google-maps-api-3

大家好,我正在尝试显示一个谷歌地图,其中包含从我关注的数据库中检索的动态位置 developer.google.com/maps/articles on phpsqlajax_v3.我创建了数据库,表格看起来像这样

Hey everyone I'm trying to display a Google map with dynamic locations retrieve from database I was following developers.google.com/maps/articles on phpsqlajax_v3.I created the database and the table looks like this

trnsportpublic 表

transportpublicid int 11 自动增量

transportpublicid int 11 AUTOINCREMENT

transportType varchar 60

transportType varchar 60

costPerKm 十进制(7,2)

costPerKm decimal(7,2)

地址 varchar 800

address varchar 800

teleNo int 10

teleNo int 10

webLink varchar 300

webLink varchar 300

描述 varchar 800

description varchar 800

纬度双(10,6)

lng double(10,6)

lng double(10,6)

GenerateXml.php

 <?php

          require("db_connection.php");


          function parseToXML($htmlStr) 
          { 
              $xmlStr=str_replace('<','&lt;',$htmlStr); 
              $xmlStr=str_replace('>','&gt;',$xmlStr); 
              $xmlStr=str_replace('"','&quot;',$xmlStr); 
              $xmlStr=str_replace("'",'&#39;',$xmlStr); // line 11  
              $xmlStr=str_replace("&",'&amp;',$xmlStr); 
              return $xmlStr; 
          } 

          // Select all the rows in the markers table
          $query = "SELECT transportType,costPerKm,address,teleNo,webLink,lat,lng FROM transportpublic";

          $result = mysql_query($query);
          if (!$result) 
          {
            die('Invalid query: ' . mysql_error());
          }

          header("Content-type: text/xml");

          // Start XML file, echo parent node
          echo '<transportpublic>';

          // Iterate through the rows, printing XML nodes for each
          while ($row = mysql_fetch_assoc($result)){
            // ADD TO XML DOCUMENT NODE
            echo '<marker ';
            echo 'transportType="' . parseToXML($row['transportType']) . '" ';
            echo 'costPerKm="' . $row['costPerKm'] . '" ';
            echo 'address="' . parseToXML($row['address']) . '" ';
            echo 'teleNo="' . $row['teleNo'] . '" ';
            echo 'webLink="' . parseToXML($row['webLink']) . '" ';
            echo 'lat="' . $row['lat'] . '" ';
            echo 'lng="' . $row['lng'] . '" ';
            echo '/>';
          }

          // End XML file
          echo '</transportpublic>';
    ?>

当我在浏览器上运行 GenerateXml.php 时,我感到很兴奋

When I run GenerateXml.php on browser is gives me fillowing

XML Parsing Error: junk after document element
Location: http://localhost:8080/testserver/generateXml.php
Line Number 11, Column 8:
</html>
<transportpublic>
<marker transportType="Bus" costPerKm="1.50" address="abc" teleNo="112554476" webLink="http://www.abc.html" lat="0.000000" lng="0.000000" />

<marker transportType="Train" costPerKm="12.00" address="abc" teleNo="118745963" webLink="http://www.abc.html" lat="0.000000" lng="0.000000" />

<marker transportType="hmmmm" costPerKm="40.00" address="abc" teleNo="112541254" webLink="http://www.abc.html" lat="-33.005985" lng="-58.501824" />

<marker transportType="test" costPerKm="2.00" address="abc" teleNo="112541258" webLink="http://www.abc.html" lat="39.785999" lng="-75.041976" />

<marker transportType="test2" costPerKm="2.00" address="abc" teleNo="112541254" webLink="http://www.abc.html" lat="6.901698" lng="79.853854" />

</transportpublic>
-------^ 

<小时>

我只知道在根元素之后我不应该解析任何数据,它将被视为垃圾,但在我的 GenerateXml.php 中,我在此行之后不做任何事情


I only got to know that after the root element I shouldn't be parsing any data it'll be taken as junk but in my GenerateXml.php i don't do anything after this line

echo '</transportpublic>';

<小时>

请帮帮我.


help me please.

推荐答案

根节点是<transportpublic> 但是错误信息显示一个伪造的</html> 在它之前关闭标签.XML 解析器可能认为 <html> 是根节点,因此 XML 的其余部分是错误提到的 文档元素之后的垃圾.

The root node is <transportpublic> but the error message shows a bogus </html> close tag right before it. The XML parser probably thinks that <html> is the root node, thus the rest of the XML is the junk after document element mentioned by the error.

相关文章