Ver Mensaje Individual
  #3 (permalink)  
Antiguo 25/01/2009, 13:03
Avatar de Gerifaltus
Gerifaltus
 
Fecha de Ingreso: junio-2005
Ubicación: Tabasco, México
Mensajes: 180
Antigüedad: 18 años, 10 meses
Puntos: 4
De acuerdo Respuesta: Pido sugerencia de funcionalidad para guardar registros en la bd

Hola que tal;

He encontrado una alternativa de solución para evitar dos consultas a la base de datos y reducirla a una sola consulta, les explico. He tomado las mismas tablas para este ejemplo.

tabla cursos
id_curso | nombre_curso
1 | curso 1
2 | curso 2
3 | curso 3

3.- Para guardar las fechas de pago he creado otra tabla fechas_pagos, y la siguiente es su estructura

tabla fechas_pagos
id_fecha_pago | id_curso | fecha
1 | 1 | 10/02/2009
2 | 1 | 10/03/2009
3 | 2 | 15/03/2009

Les comentaba que guardaba en cada registro (fila) las fechas y los id's de los cursos tantas veces como número de parcialidades hubiesen, bien, lo que he ideado es serializar los datos y guardarlos serializados, de esta manera en lugar de ocupar por ejemplo 5 filas con diferente fecha, solo ocupo una fila y en lugar de las fechas, guardo el resultado de serializar las 5 fechas dentro de un array, ok, veamos un ejemplo

tabla fechas_pagos
id_fecha_pago | id_curso | fecha
1 | 1 | a:1:{i:0;s:10:"12-01-2009";}
2 | 2 | a:2:{i:0;s:10:"12-01-2009";i:1;s:10:"20-01-2009";}
3 | 3 | a:3:{i:0;s:10:"12-01-2009";i:1;s:10:"20-01-2009";i:2;s:10:"15-02-2009";}

ok, lo que aparece en el campo fecha, son las fechas "serializadas" en un array, para convertirlas hice lo siguiente:

Código PHP:
$fechas = array ('12-01-2009','20-01-2009','15-02-2009');
$serializadas serialize($fechas); 
Y de esa manera al momento de modificar, agregar ó quitar fechas de pago, sólo actualizao el registro (UPDATE) y escribo las nuevas fechas serializadas, y para regresarlas a su modo "natural" dentro del array, utilizo unserialize($serializadas).

Ok, si alguien tiene alguna otra sugerencia, es bienvenida.

Saludos
__________________
:::.. Todo tiene un ¿Por qué? y un ¿Para qué? ..:::
:::.. Todo se reduce a un SI y a un No ..:::