Desculpa reviver o tópico mas creio que muita gente faz o seguinte:
usa um select `id` desc limit 1 pra pegar a nova id que sera cadastrada antes de cadastra-la, esse sistema funcionaria se nao fosse que ao deletar um id o auto-increment continua pulando akele que foi deletado (Por exemplo: ultima id eh 15 ai você deleta esse 15 e o sql continua inserindo 16 mas com seu codigo o ultimo id seria 15) entao minha solução pra isto foi:
1 - SETE O AUTOINCREMNT DA SUA TABELA PARA O ULTIMO ID, DEPOIS COLOQUE NO CODIGO DE REMOÇÃO DE REGISTROS
$query1 = mysql_query("delete from table WHERE `id`=?", array($_GET['remover'])); // DELETA O REGISTRO
$query2 = mysql_query("SELECT * FROM `table` ORDER BY `id` DESC LIMIT 1"); // PEGA O ULTIMO ID DA TABELA
$novo = mysql_fetchrow($query2); // FETCH
$id = ($novo['id']-1); // NOVO AUTO INCREMENT COMEÇARA DA ID ANTERIOR POIS A ULTIMA FOI REMOVIDA
$query3 = $db->execute("ALTER TABLE `table` AUTO_INCREMENT=$id"); // NOVO AUTO INCREMENT SERA SEMPRE O ULTIMO ID
EU SEI EU EXPLICO MUITO MAL, MAS SE VOCE CONSEGUIU ENTENDER SUA TABELA SEMPRE FICARA COM O AUTO-INCREMENT CERTO MESMO SE VOCE DELETAR O ULTIMO REGISTRO (COM PHP) E PODERA USAR SEMPRE O CODIGO DO SELECT ORDER BY ID DESC SEM PROBLEMAS...