as gerrygerry was suggesting, the id is the way to go.
You can then "trap" for the id and assign the id number to a variable.
Here's a code-snippet that I use in one of my proggies:
for ($i = 0; $i < mysql_num_rows($result); $i++){
$row_array=mysql_fetch_row($result);
for ($j=0; $j < mysql_num_fields($result); $j++) {
if ((mysql_field_name($result, $j) == "date"

xor (mysql_field_name($result, $j) == "entry"

) {
echo ("<tr><td><p><pre wrap>" . $row_array[$j] . "</pre></p></td></tr>"

;
}
else {
$last = $row_array[$j];
}
}
$last, in this scenario, will be id number of the record.
Your "next" select statements can then be:
select * from tablename where condition limit $last, 1
and for "previous" it would be ($last - 1)