我有关于PHP分页脚本对于平面文件数据库,我发现了几个问题。 我已经发布了下面的脚本。帮助PHP脚本分页对于平面文件数据库
<?php
echo '<html><body>';
// Data, normally from a flat file or some other source
$data = "Item1|Item2|Item3|Item4|Item5|Item6|Item7|Item8|Item9|Item10";
// Put our data into an array
$dataArray = explode('|', $data);
// Get the current page
$currentPage = trim($_REQUEST[page]);
// Pagination settings
$perPage = 3;
$numPages = ceil(count($dataArray)/$perPage);
if(!$currentPage || $currentPage > $numPages)
$currentPage = 0;
$start = $currentPage * $perPage;
$end = ($currentPage * $perPage) + $perPage;
// Extract ones we need
foreach($dataArray AS $key => $val)
{
if($key >= $start && $key < $end)
$pagedData[] = $dataArray[$key];
}
foreach($pagedData AS $item)
echo '<a href="/'. $item .'/index.php">'. $item .'</a><br>';
if($currentPage > 0 && $currentPage < $numPages)
echo '<a href="?page=' . ($currentPage - 1) . '">« Previous page</a><br>';
if($numPages > $currentPage && ($currentPage + 1) < $numPages)
echo '<a href="?page=' . ($currentPage + 1) . '" class="right">Next page »</a><br>';
echo '</body></html>';
?>
我的第一个问题似乎是在第9行,我可以改变行:
$currentPage = trim(@$_REQUEST[page]);
但这种变化不会修正这个错误,它只是将其隐藏。第9行需要做些什么来摆脱我的错误页面?
其次,我想以不同的方式来获取在第5行中的数据。我想从文本文件中获取数据,我们将其称为“items.txt”,它具有如下的条目,每行一个。
Fun
Games
Toys
Sports
Fishing
Pools
Boats
请推荐备用代码来获取所需的数据。
最后,我想包括指向“第一页”和“最后一页”以及“上一页”和“下一页”,为的是当前的代码。
我为我的马虎发帖道歉,但将是真正的赞赏人谁可以帮助我了解生产所需的我需要的结果的变化。谢谢.....
谢谢!到现在为止还挺好。我已经修复了所述的错误,现在我正在从文本文件中获取数据。如果当前页面URL包含它自己的查询字符串呢?这将是一个问题,对吗?那么该怎么办? – mobilestimulus 2011-05-11 18:55:59
我不完全了解你的新问题。至于Stackoverflow的性质,分别询问每个问题是非常有益的。否则,这使得未来的搜索者很难找到答案。 – erisco 2011-05-11 19:31:42
假设这个脚本显示在一个名为site.com/index.php?member=156的页面上,点击Next Page链接后,成员变量将会消失。这有帮助吗? – mobilestimulus 2011-05-11 20:25:13