php修改排序,上移下移

时间:2023-03-08 17:04:47
/**
 $UpDown //移动方向,up或down
 $table //表名
 $id //当前移动的ID
 $id_col //ID字段的名称
 $oc_col //排序字段的名称
 $where //条件
*/
function MoveUpDown($UpDown,$table,$id,$id_col='id',$oc_col='OrderColumn',$where='')
 {
   if($UpDown=='up'){$op='<';$desc='desc';}else{$op='>';$desc='';}
   if($where!='') $where="$where and";
   $rs=mysql_query("select $id_col,$oc_col from $table where $where {$oc_col}{$op}=(select $oc_col from $table where $id_col=$id) order by $oc_col $desc limit 2");
   if($row=mysql_fetch_array($rs)){$id1=$row[$id_col];$oc1=$row[$oc_col];}
   if($row=mysql_fetch_array($rs)){$id2=$row[$id_col];$oc2=$row[$oc_col];}
   mysql_free_result($rs);
   if(isset($id1)){
    mysql_query("update $table set $oc_col= ".$oc2." where $id_col=$id1");
   }
   if(isset($id2)){
    mysql_query("update $table set $oc_col= ".$oc1." where $id_col=$id2");
   }
   echo "<script type='text/javascript'>window.location.href='".$_SERVER['PHP_SELF']."';</script>";exit; //移动后刷新页面
 }