> From: Clive Bruton [mailto:[EMAIL PROTECTED]]
> Sent: Monday, July 15, 2002 5:01 PM
>
> How do I get both the number of rows found (5,000) and get a
> subset of
> the records (ie 0-9, 10-19, 20-29...) so that a user can
> browse through
> the records rather than getting 5,000 at a time (but still
> know that a
> total of 5,000 were found).
I think you need to do two querys. At least that's how I do it...
First SELECT COUNT(*) FROM table
and then SELECT whatever FROM table LIMIT 0,10
list.php:
<?php
$rows_to_list = 10; // Number of rows per page
if(isset($_GET['offset'])) // Find out which row to start with
$offset = $_GET['offset'];
else
$offset = 0;
$result = mysql_query("SELECT COUNT(*) as numrows FROM
table",$db);
$row = mysql_fetch_array($result);
$num_rows = $row['num_rows'];
echo "Displaying rows " . $offset + 1 . " to $rows_to_list (total
$num_rows rows)\n";
$result = mysql_query("SELECT * FROM table LIMIT $offset,
$rows_to_list",$db);
echo "<table border=1>";
echo "<tr><td>Name</td><td>Position</tr>\n";
while ($myrow = mysql_fetch_row($result)) {
printf("<tr><td>%s %s</td><td>%s</tr>\n", $myrow[1],
$myrow[2], $myrow[3]);
}
echo "</table>\n";
?>
<a href="list.php?offset=<?php echo $offset - $rows_to_list; ?>">Previous
<?php echo $rows_to_list ?></a><br>
<a href="list.php?offset=<?php echo $offset + $rows_to_list; ?>">Next <?php
echo $rows_to_list ?></a>
This oughta do it...
Regards
Joakim Andersson
--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php