pensavo ad una cosa del genere:
cliccando su un pulsante arrivano alla pagina php queste info:
1-$vecchio_id da spostare
2-$vecchio_ordine attuale
3-se bisogna spostarlo su o giu
diciamo che vuole essere spostato in alto
poi fai una query
"select * from tab where ordine<{$vecchio_ordine} limit 0,1";
(questo per gestire anche la possibilità che vengano cancellati dei records quindi "ordine" non sarebbe piu completo, col +1/-1 potrebbe incasinarsi)
con mysql_num_rows vedi se esiste (se non esiste è gia quella piu in alto) e ricavi $nuovoid $nuovo_ordine
poi fai l'update $nuovo_id -> $vecchio_ordine e $vecchio_id -> $nuovo_ordine

Rispondi quotando