Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/05/2013, 10:14
Avatar de destor77
destor77
 
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
transacciones y métodos

Hola,
segun la doc de CI (manual de usuario CI 2.1.3) las transacciones se manejan asi:
Código PHP:
Ver original
  1. $this->db->trans_start();
  2. $this->db->query('UNA CONSULTA SQL...');
  3. $this->db->query('OTRA CONSULTA...');
  4. $this->db->trans_complete();
  5.  
  6. if ($this->db->trans_status() === FALSE)
  7. {
  8.     // genera un error... o usa la función log_message() para guardar un registro del error
  9. }

Lo que estoy intentando sin exito es esto:
Código PHP:
Ver original
  1. $this->db->trans_start();
  2. $this->modelo1->save($datos);
  3. $this->modelo2->save($datos1);
  4. $this->modelo3->save($datos2);
  5. $this->db->trans_complete();
  6.  
  7. if ($this->db->trans_status() === FALSE)
  8. {
  9.     // genera un error... o usa la función log_message() para guardar un registro del error
  10. }

Si se produce algun error en algunos de los save no me esta haciendo el rollback para que no guarde nada. Que estoy haciendo mal?
Saludos