Ver Mensaje Individual
  #3 (permalink)  
Antiguo 11/07/2006, 10:21
Avatar de Nefertiter
Nefertiter
 
Fecha de Ingreso: enero-2003
Ubicación: Rosario
Mensajes: 1.316
Antigüedad: 21 años, 4 meses
Puntos: 9
djreficul eso no es lo que preguntaron, x lo q lei quieren poder dar orden a los registros pero no de esa manera sino con un Subir-Bajar

yo utilizo algo de ajax para eso...
En mi tabla agrego un campo "NUMERO_ORDEN_REGISTRO" [cat_orden en el ejemplo], que cada vez q se agrega un registro a la tabla, toma el valor del orden mas alto + 1.

tengo un boton subir y un boton bajar, en una fila ok?

bueno al ejecutarse alguno de ellos se ejecuta el siguiente codigo

la var accion1 significa se apreto uno de los botones, q pasa por GET el ID_REGISTRO ($_GET['cat_id'])Y EL NUMERO_ORDEN_REGISTRO ($_GET['cat_orden'] )

Código PHP:
if(isset($_GET['accion1'])){
$query_pos $db->query("SELECT MAX(cat_orden) As MAYOR, MIN(cat_orden) As MENOR FROM categorias");
    
$row_pos $db->fetch_assoc($query_pos);
    
$mayor $row_pos['MAYOR'] ;
      
$menor $row_pos['MENOR'] ;
    if (
$_GET['accion1'] == '1'){
    
//bajamos al alto y subimos a este    
    
$sql2  "UPDATE categorias SET cat_orden = cat_orden +1 WHERE cat_orden = ".($_GET['cat_orden'] -)."";
    
$sql "UPDATE categorias SET cat_orden = cat_orden -1 WHERE cat_id =".$_GET['cat_id']."";
    }else{    
    
$sql2  "UPDATE categorias SET cat_orden = cat_orden -1 WHERE cat_orden = ".($_GET['cat_orden']+)."";
    
$sql "UPDATE categorias SET cat_orden = cat_orden +1 WHERE cat_id =".$_GET['cat_id']."";

    }
    
        if (
$_GET['accion1'] == '1' && $_GET['cat_orden'] != $menor){
    
        
$db->query($sql2) or die (mysql_error().$sql2);
        
$db->query($sql) or die (mysql_error().$sql);
        }
        if (
$_GET['accion1'] == '2' && $_GET['cat_orden'] != $mayor){
    
        
$db->query($sql2) or die (mysql_error().$sql2);
        
$db->query($sql) or die (mysql_error().$sql);
        }