Normal, tu as mis deux clauses WHERE :
Au lieu de :
UPDATE $table SET ordre=ordre-- WHERE ordre < $neu AND WHERE ordre => $old
Essaye
UPDATE $table SET ordre=ordre-- WHERE ordre < $neu AND ordre => $old
Syntaxiquement, on met autant de clauses WHERE que l'on veut, mais une seule et unique fois le mot clé WHERE et on sépare chaque clause avec des OR ou de AND en utilisant éventuellement des parenthèses.
Fouille un peu sur le net, il existe des tutos sur les bases fondamentales du SQL qui pourraient s'avérer très utiles pour ne pas passer trop de temps sur des débogages de ce type ;)
______________________________________________________________
Une question bien formulée, c'est un problème bien compris : ça représente déjà les 3/4 de la réponse ;)