Ответ от Билла был точен - но он не включал код PHP, необходимый для выполнения операции, поэтому вот что я закончил:
<?php
//if new sort number is less than old sortnum
if ($newsortnum < $oldsortnum){
//RUN SEPARATE QUERIES
$sql_rename="UPDATE `sourcedocs` SET sort1 = '999' WHERE sort1 =".$oldsortnum." AND category = '".$category."'";
$sql_reorder="UPDATE `sourcedocs` SET sort1 = sort1 +1 WHERE sort1 >= ".$newsortnum." AND sort1 <= ".$oldsortnum." AND category = '".$category."'";
$sql_insert="UPDATE `sourcedocs` SET sort1 =".$newsortnum." WHERE sort1 = '999' AND category = '".$category."'";
}
//if new sort number is greater than old sortnum decrement all sortnums greater than new sortnum and decrement sortnums between
if ($newsortnum > $oldsortnum){
//RUN SEPARATE QUERIES
$sql_rename="UPDATE `sourcedocs` SET sort1 = '999' WHERE sort1 =".$oldsortnum." AND category = '".$category."'";
$sql_reorder="UPDATE `sourcedocs` SET sort1 = sort1 -1 WHERE sort1 <= ".$newsortnum." AND sort1 >= ".$oldsortnum." AND category = '".$category."'";
$sql_insert="UPDATE `sourcedocs` SET sort1 =".$newsortnum." WHERE sort1 = '999' AND category = '".$category."'";
}
?>
Короче говоря, я остановилсясоздание экземпляра PDO для beginTransaction ();... немного более грязно, но это работает.Я могу перейти на метод PDO, но нужно двигаться дальше.Вот ссылка на информацию о PDO, если у вас возникли подобные трудности:
PHP.net - PDO Construct PHP.net - PDO beginTransaction ();