Ver Mensaje Individual
  #136 (permalink)  
Antiguo 11/10/2010, 18:03
Avatar de mortiprogramador
mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 8 meses
Puntos: 214
Respuesta: checkbox marcado

Cita:
Iniciado por edgar4615 Ver Mensaje
Mortiprogramador, no existe ninguna otra de hacer el paginado. Cuando elimino un registro quiero que dicho registro no aparezca en la base de datos, pero por el contrario que el paginado me funcione... Decirte que he revisado toda la aplicación y ya está casi terminada y todo funciona correctamente, a falta de ese pequeño, gran detalle jejeje, que la paginación funcione.

He estado dandole vueltas a la cabeza y no encuentro alternativa... no quiero cambiar la forma de paginar porque es la única que funciona como yo quiero, manteniendo el grid de arriba y las búsquedas... Esta perfecta, salvo el detalle del código autoincrement.

Si lo dejo manual, tampoco serviría, ya el usuario no puede editar nunca ese código...

Al elegir un registro, por ejemplo el 5, y borrarlo de la bd, ¿no podría restarle al código de los que están por encima del 5, -1, y sumarle al nuevo registro, último código +1?

Sería un reordenar, y al nuevo registro le asigno el último código +1.

Es muy enreoso y ni si quiera se como hacerlo pero creo que es la única forma posible...


Muchas gracias de antemano.


Muchas gracias a forosdelweb y a ti mortiprogramador, por ayudarme y hacerme tan feliz, un saludo!!!
bueno, lo que propones imagino que se puede hacer pero pues
estas pensando en este momento para un registro, pero puedes
llegar a borrar miles y ese proceso puede ser bastante demorado

porque no intentas del modo que te indique? manejando un campo estado??
de ese modo, si el estado es S (condición en WHERE en el paginado) entonces el paginado solo listara los que estan activos, y en el momento de borrar un registro no se borra como tal sino que se actualiza ese campo activo a N para que al realizar de nuevo la consulta del grid, ya no aparecera

ahora, eso es lo más fácil, otra solución que se me ocurre es manejar una tabla eliminados, donde se guarde cada id eliminado y luego en el query del grid se haga una consulta previa a esa tabla y se traigan todos los ids concatenados, y finalmente se haga la consulta del grid y se haga un NOT IN ($ids) donde $ids serian los ids concatenados, y allí haria el paginado excluyendo a esos ids, en fin, ocurrencias
prueba eso
saludos
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com