第10行第2行出错:xmlParseDocTypeDecl:无DOCTYPE名称

时间:2014-01-10 15:00:08

标签: php xml mysqli

刚收到此错误,不知道为什么,有人可以帮忙吗?

  第10行第2行的

错误:xmlParseDocTypeDecl:没有DOCTYPE名称!

我正在尝试从我的数据库中获取信息,并在浏览器中运行时将其输出到XML中。 这是我的代码

<?php 
  include 'header.php';

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

  // Select all the rows in the Blog table
  $query = "SELECT * FROM Blog WHERE 1";
  $result = mysqli_query($con, $query);
  if (!$result) 
  {
   die('Invalid query: ' . mysqli_error($con));
  }

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

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

  // Iterate through the rows, printing XML nodes for each
  while ($row = @mysqli_fetch_assoc($result))
  {
   // ADD TO XML DOCUMENT NODE
   echo '<blogs ';
   echo 'ID="' . parseToXML($row['ID']) . '" ';
   echo 'subject="' . parseToXML($row['subject']) . '" ';
   echo 'content="' . parseToXML($row['content']) . '" ';
   echo 'latitude="' . $row['latitude'] . '" ';
   echo 'longitude="' . $row['longitude'] . '" ';
   echo 'imageName="' . parseToXML($row['imageName']) . '" ';
   echo 'datetime="' . parseToXML($row['datetime']) . '" ';
   echo '/>';
 }

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

1 个答案:

答案 0 :(得分:1)

原来没有DOCTYPE名字的字面意思,我没有命名我的DOCTYPE。

我有

<!DOCTYPE>

我本应该去哪里

<!DOCTYPE html>

通常情况下这不会引起问题,但由于我在尝试输出XML数据,因此文档树中的所有内容都必须完美。