基于辅助字段而不是键的记录集分页。

Bit stuck on how to achieve this.....

I have a PHP page which shows information for one record in a table. These records include a unique key (image_id) AND a name (image_name).

In order to display the correct record, I am using a search function on a previous page which results in a URL parameter (imageinfo.php?image_id=1 etc).

My problem is that I wish to add forward and back arrows to the table to cycle through different records, BUT based on the alphabetical order of 'image_name' rather than the numerical order of 'image_id.

I'm really not sure how to achieve this, so any help would be appreciated.

Something like this: (I hope the comments will explain)

<?php
$data = array(
    123 => "B",
    321 => "C",
    124 => "A"
);
$id = 123; // This is the current image id
asort($data); // Sort the array based on values (names)
// Advance the internal pointer until it points to the current image
while(current($data) != $data[$id])
    next($data);
// TODO: Also check whether next is past end here
echo next($data); // Should be C