Pagination code not behaving

Hi all,

I’ve written code to enable pagination of my search results, but it isnt behaving how I expect it to. It produces 5 results per page, no matter how many I tell it to display, and will not produce the navigation links at all (there are 6 test examples in my database).

Is anyone able to look over my code and tell me where i’m going wrong?

I have error reporting on, but it wont report user error :drool:

Here is my code:

$connection = mysql_connect($hostname, $username, $password);
    if (!$connection) {
       die("A connection to the server could not be established");
    }
/*Select Database */
    mysql_select_db($database) or die("Database could not be selected!");

/*set variables*/
if (isset($_POST['MerchantType']) && isset($_POST['County'])){
    $MerchantType = $_POST["MerchantType"];
    $County = $_POST["County"];
    echo $County . "  " . $MerchantType;
}
   
    
/* Set current, prev and next page */
$page = (!isset($_GET['page']))? 1 : $_GET['page'];  
$prev = ($page - 1);
$next = ($page + 1);

/* Max results per page */
$max_results = 2;

/* Calculate the offset */
$from = (($page * $max_results) - $max_results);
/*Query */
$result = mysql_query("SELECT * FROM $tablename WHERE County = '$County' AND MerchantType = '$MerchantType'") or die(mysql_error());

$total_results = mysql_num_rows($result);

$total_pages = ceil($total_results / $max_results);

$pagination = '';

/* Create a PREV link if there is one */
if($page > 1)
{
$pagination .= '<a href="index.php?page='.$prev.'">Previous</a> ';
}

/* Loop through the total pages */
for($i = 1; $i <= $total_pages; $i++)
{
if(($page) == $i)
{
$pagination .= $i;
}
else
{
$pagination .= '<a href="index.php?page='.$i.'">$i</a>';
}
}

/* Print NEXT link if there is one */
if($page < $total_pages)
{
$pagination .= '<a href="index.php?page='.$next.'">Next</a>';
}




while ($i = mysql_fetch_array($result))



while ($row_details = mysql_fetch_array($result))

Hopefully someone might be able to help.

Thanks,

Sam