您好我一直在尝试创建一个论坛而且我做的正确,但问题是整个页面正在重新加载,这意味着如果您在页面上有太多评论,它将始终将您重定向到顶部并且您有向下滚动到最后一条评论,所以我学会了ajax来解决这个问题,但是我面对这个问题说“第323行第28行的错误:实体'ldquo'未定义”请问这里解释的是生成的PHP XML
<?php
header('Content-Type: text/xml');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
?>
<?php
require 'connect.inc.php';
$sql= $db->query("SELECT * FROM comments");
$results = $sql->fetchAll(PDO::FETCH_ASSOC);
echo '<comments>'."\n";
foreach($results as $result)
{
echo '<comment>'."\n";
echo $result['post']."\n";
echo '</comment>'."\n";
}
echo '</comments>';
?>
答案 0 :(得分:0)
似乎与你的$结果相关。 我用假的$ results尝试你的代码,它运行良好。 顺便说一下,假的$结果是: $ results = array(array('id'=&gt; 1,'post'=&gt;'a'),array('id'=&gt; 2,'post'=&gt;'b'));
演示代码:
<?php
header('Content-Type: text/xml');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
?>
<?php
#require 'connect.inc.php';
#$sql= $db->query("SELECT * FROM comments");
#$results = $sql->fetchAll(PDO::FETCH_ASSOC);
$results = array(array('id' => 1, 'post' => 'a'), array('id' =>2 , 'post' => 'b'));
echo '<comments>'."\n";
foreach($results as $result)
{
echo '<comment>'."\n";
echo $result['post']."\n";
echo '</comment>'."\n";
}
echo '</comments>';
?>
答案 1 :(得分:0)
在php中,您可以将数组转换为xml数据
$test_array = array (
'bla' => 'blub',
'foo' => 'bar',
'another_array' => array (
'stack' => 'overflow',
),
);
$xml = new SimpleXMLElement('<root/>');
array_walk_recursive($test_array, array ($xml, 'addChild'));
print $xml->asXML();
O / P: -
<?xml version="1.0"?>
<root>
<blub>bla</blub>
<bar>foo</bar>
<overflow>stack</overflow>
</root>