lo que necesitas entonces es un simple contador. El identificador nunca cambia. Es independiente de si lo ordenaste en forma descendente o ascentedente. EL identificador es precisamente eso, una forma de identificar bajo cualquier circunstancia un registro. Cuando tu haces una consulta como esta:
Código:
INSERT INTO clientes(unique_id,name) VALUES (NULL,'nombre del cliente');
El campo unique_id será el próximo disponible de la tabla, suponiendo que cuando creaste la tabla hiciste que el campo fuera autoincrementable y único. Ese identificador lo puedes recuperar después de haber hecho la inserción de la forma que ya te expliqué. Ahora bien, simplemente cuando los ordenes en forma ascendente o descentente, tienes que contar cuantos registros hay antes. algo similar a esto:
Código PHP:
//insertas al usuario
$sql_insert = "INSERT INTO customers (customer_id,customer_name) VALUES (NULL,'pedro paramo');";
mysq_query($sql);
//recuperas su identificador
$sql_recover_id = "SELECT LAST_INSERT_ID() AS last_id FROM customers";
$rss = mysql_query($sql_recover_id);
$row = mysq_fetch_object($rss);
$id = $row->last_id;
//haces una consulta ordenada por nombre descendentemente y cuentas el lugar
$sql = "SELECT * FROM customers ORDER BY customer_name DESC";
$rss = mysql_query($sql);
$counter = 1;
while ( $customers = mysql_fetch_object($rss) ) {
if ( $id == $customers->customer_id ) {
break;
} else {
$counter++;
}
}
echo "Eres el número {$num} de la lista ordenada alfabeticamente descendentemente";
es algo escueto, pero creo que está bien, o no te entendí lo que buscas.
saludos