Help With PHP Pagination Script For Flat File Database -
i have few questions regarding php pagination script flat file database found. have posted script below.
<?php echo '<html><body>'; // data, flat file or other source $data = "item1|item2|item3|item4|item5|item6|item7|item8|item9|item10"; // put our data array $dataarray = explode('|', $data); // 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 need foreach($dataarray $key => $val) { if($key >= $start && $key < $end) $pageddata[] = $dataarray[$key]; } foreach($pageddata $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>'; ?> my first problem seems in line 9. change line to:
$currentpage = trim(@$_request[page]); but change won't fix error, hide it. needs done line 9 rid page of error?
secondly, fetch data on line 5 in different way. data text file, let's call "items.txt", has entries below, 1 per line.
fun games toys sports fishing pools boats please recommend alternate code fetch desired data.
lastly, include links "first page" , "last page" "previous page" , "next page", current code.
i apologize sloppy posting, real appreciative of me understand changes needed produce desired results. thanks.....
problem line 9
$_request[page] has 2 separate problems.
1) page being read name of constant because not quoted. php notices there no constant called page, takes guess meant string page -- if page quoted -- , triggers error notify you. therefore, use $_request['page'] instead.
2) 'page' not key of $_request because data not guaranteed given. therefore, cannot refer $_request['page'] before ensure exists. may done isset($_request['page']).
your final code should this, then.
if (isset($_request['page'])) { $currentpage = $_request['page']; } else { $currentpage = 'some default value'; } problem data source
the file() function reads lines of file array -- example, fourth value of array fourth line in file. therefore, can set $dataarray $dataarray = file('text.dat');.
Comments
Post a Comment