繁体   English   中英

在页面刷新时解析xml feed中的下一个值

[英]parse next value from xml feed on page refresh

我有一个xml feed,可以使用simplexml_load_file进行访问,并且每次访问都可以使用其中的所有记录。 我还可以使用以下命令访问单个节点:

$xml->property[0]->propertyID;

我想做的是依次显示每个记录,即从[0]移至[1],依此类推,依次打开页面刷新,但不知道如何处理。

我只是一个业余爱好者,如果这是一个新问题,请原谅我

您需要在某处引入一些状态,以便您可以记住到达的位置。

您可以在每次使用cookie刷新页面时让浏览器计数 ,或者可以通过在服务器,通过在数据库,文件或URL中的位置存储当前节点号来记住这一点。

可能最简单的方法是将下一个节点号附加到URL的末尾,因此,当重新加载该页面时,您将在服务器端看到该参数并可以加载该节点。 像这样:

$node = 0;
if (empty($_GET['nextnode']))
{
    header('Location: example.php?nextnode=' . node + 1);
} else {
    $node = $_GET['nextnode'];
}
...
$xml->property[$node]->propertyID;

刷新页面后,它会像往常一样向您的PHP脚本发出请求,但是在所请求的URL的末尾会显示以下内容:

?nextnode=23

PHP将这些URL参数存储在$_GET数组中,然后可以在脚本中进行查询。 查找标题上的文档以获取更多信息。

另一种类似的技术是在PHP中创建页面时将值存储在隐藏的表单字段中:

echo '<form>
    <input type="hidden" value="'.$node + 1.'" />
    <input type="submit" value="Next Node" />
</form>';

这将在页面上创建一个“下一个节点”按钮,当有人单击它时,它将作为表单提交发送回给您。 然后,您可以查找下一个节点并重新显示该页面。 有关在PHP中处理表单的更多信息,请参见此处。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM