如何从XML中获取数据并将其分页(分页)
问题描述:
嘿,大家好,我正在使用simplexml从外部XML源中提取数据。即使限制显示结果的数量,我也有值。我认为我可以在网址中简单查询,例如“& page = 2”,但根据文档显示,这是不可能的。如何从XML中获取数据并将其分页(分页)
我下载了一个打算在MYSQL查询中使用的分页类,试图使用xml中的变量输出。但是输出结果是加载了xml的整个结果,而不是URL变量中指定的结果。
我想我可能会做的是首先计算结果然后分页,这正是我想要做的。你看到这个代码中有什么可以改进的地方吗?对不起,如果还不清楚,但可能与一些编码人员讨论,我可以看到隧道尽头有点亮,而且边缘更好一些。
所以这里是代码:
<?
$url ="http://www.somedomain.com/cgi/xml/engine/get_data.php?ref=$ref&checkin=$checkin&checkout=$checkout&rval=$rval&pval=$pval&country=$country&city=$city&lg=$lg&orderby=$orderby&ordertype=$ordertype&maxrows=$maxrows";
//看到我已经定义URL中的行的最大NUM。这意味着解决这个问题的正确方法是从#提前开始计数?
$all = new SimpleXMLElement($url, null, true);
$all->items_total = $hotels->id;
//
require_once 'paginator.class.php'; //调用分页程序类
foreach($all as $hotel) // loop through our hotels
{
$pages = new Paginator;
//创建一个新的分页程序 $ pages-> mid_range = 7; $ pages-> items_total = $ hotel-> id; //从XML
$rest = substr($hotel->description, 0, -150); // returns "abcde"
//echo <<<EOF
<table width="100%" border=0>
<tr>
<td colspan="2"><a href="{$hotel->rooms->room->bookUrl}">{$hotel->name}<span class="stars" widht="{$hotel->rating}">{$hotel->rating}</span></h2></a></a><p><b>Direccion:</b> <i>{$hotel->address}</i> - {$hotel->province}</p>
<td colspan="2"><div align="center">PRECIO: {$hotel->currencyCode} {$hotel->minCostOfStay</a>
</div></a></a>
</td>
</tr>
<tr>
<td colspan="2"> $rest...<a href="{$hotel->rooms->room->bookUrl}"><strong>ampliar información</strong></a></td>
<td valign="middle"><div align="center"><a href="{$hotel->rooms->room->bookUrl}"><img src="{$hotel->photoUrl}"></div></td>
</tr>
<tr>
<td colspan="2"><div align="center"><a href="{$hotel->rooms->room->bookUrl}"><strong>VER TODO SOBRE ESTE </strong></a></div></td>
<td colspan="2"><div align="center">$text</a></div></td>
</a></div></td>
</tr>
//EOF;
echo '</table>';
$pages->paginate();
}
echo $pages->display_pages();
?>
答
你重挫您$all
变量提取变量超出:
$all = new SimpleXMLElement($url, null, true); // used by the loop
$all = new Paginator; // reset within the loop
+0
对。已经改变了var的名字。无论如何它都会返回相同的问题 – Flavio 2010-08-04 13:56:34
任何有线索?认为我打电话正确的变种? – Flavio 2010-08-04 14:32:17