Hi again everyone,
Ive got my pagination working, finally, only one problem with it.
displaying 10 links in the bottom, no matter how many results there are
<?php
$searchit = $_GET['search'];
echo "Your Search Term <b>$searchit</b><br><br>";
include 'config.php';
$db = mysql_connect($dbhost,$dbuser,$dbpass);
mysql_select_db ($dbname) or die ("Cannot connect to database");
// If current page number, use it
// if not, set one!
if(!isset($_GET['page'])){
$page = 1;
} else {
$page = $_GET['page'];
}
// Define the number of results per page
$max_results = 5;
// Figure out the limit for the query based
// on the current page number.
$from = (($page * $max_results) - $max_results);
// Perform MySQL query on only the current page number's results
$searchit = $_GET['search'];
$query = "SELECT * FROM product WHERE product_name LIKE '%".$searchit."%' ORDER BY price DESC LIMIT $from,$max_results";
$sql = mysql_query($query)or die (mysql_error());
while($r=mysql_fetch_array($sql))
{
$program_name=$r["program_name"];
$product_name =$r["product_name"];
$price=$r["price"];
$image_url = $r['image_url'];
$deeplink=$r["deeplink"];
// Now lets display all the contect for each file
echo "<table width=\"100%\" border=\"0\"><tr>
<td><img src=\"$image_url\" height=\"100\" width=\"80\" /></td>
<td><b>$product_name</b><br />
@ £$price<br />
<a href=\"$deeplink\" target=\"_blank\">Trade</a><br />
$program_name<br />
</p>
</td>
</tr></table>
<br>";
}
// Figure out the total number of results in DB:
$searchit = $_GET['search'];
$total_results = mysql_result(mysql_query("SELECT * FROM product WHERE product_name LIKE '%".$searchit . "%' ORDER BY price DESC"),0);
// Figure out the total number of pages. Always round up using ceil()
$total_pages = ceil($total_results / $max_results);
// Build Page Number Hyperlinks
echo "<center><font face=verdana size=1>Select a Page<br />";
$searchit = $_GET['search'];
if(!isset($_GET['page'])){
$page = 1;
} else {
$page = $_GET['page'];
}
// Build Previous Link
if($page > 1){
$prev = ($page - 1);
echo "<a href=\"".$_SERVER['PHP_SELF']."?search=$searchit&page=$prev\"><font face=verdana size=1><< Previous</a> ";
}
$first_page = min(1);
$last_page = max($totalpages, $first_page+10);
for($i=$first_page; $i<=$last_page; $i++) {
if(($page) == $i){
echo "$i ";
} else {
echo "<a href=\"".$_SERVER['PHP_SELF']."?search=$searchit&page=$i\"><font face=verdana size=1>$i</a> ";
}
}
// Build Next Link
if($page < $total_pages){
$next = ($page + 1);
echo "<a href=\"".$_SERVER['PHP_SELF']."?search=$searchit&page=$next\"><font face=verdana size=1>Next>></a>";
}
echo "</center>";
?>
link is
<< Previous 1 2 3 4 5 6 7 8 9 10 Next>>
But there are only results on page 1 & 2
Any help, as always greatly appreciated
David