Foros del Web » Programando para Internet » PHP » Zend »

ayuda con transacciones en Zend

Estas en el tema de ayuda con transacciones en Zend en el foro de Zend en Foros del Web. Hola a todos, de antemano agradecerles por su ayuda, bueno mi problema es que tengo el ejemplo descargado de un sistema biblioteca usando Zend, todo ...
  #1 (permalink)  
Antiguo 19/11/2010, 08:09
Avatar de alfcm  
Fecha de Ingreso: mayo-2009
Mensajes: 291
Antigüedad: 14 años, 10 meses
Puntos: 7
ayuda con transacciones en Zend

Hola a todos, de antemano agradecerles por su ayuda, bueno mi problema es que tengo el ejemplo descargado de un sistema biblioteca usando Zend, todo corre bien, pero quisiera trabajar con transacciones, por ejemplo en esta clase del model

Código PHP:
class Model_DBTable_Libros extends Zend_Db_Table_Abstract {
        public function 
addLibro($titulo$autor){
         
$data = array('titulo' => $titulo'autor' => $autor);
          
$this->insert($data);
    }

Buscando en google y en el manual de zend encontre esto:

Código PHP:
$db->beginTransaction(); 
y el objeto $db lo obtengo de

Código PHP:
$db Zend_Db::factory('Pdo_Mysql', array(host=>'ccc',username=>'aaa'......)); 

No se como trabajar esto, solo quiero usar transacciones y seguir con mi archivo INI para no estar creando un objeto de conexion $db->Zend_Db->factory('Pdo_Mysql', array(host=>'ccc',username=>'aaa'......)); por cada clase de mi modelo


Agradezco mucho su respuesta

Última edición por alfcm; 19/11/2010 a las 08:31
  #2 (permalink)  
Antiguo 19/11/2010, 09:24
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: ayuda con transacciones en Zend

Deberia ser algo asi:
Código PHP:
public function addLibro($titulo$autor)
{
     
$this->getAdapter()->beginTransaction();
     try {
         
$data = array('titulo' => $titulo'autor' => $autor);
         
$this->insert($data);
         
$this->getAdapter()->commit()
     }catch(
Exception $e) {
          
$this->getAdapter()->rollBack();
          echo 
$e->getMessage();
     }     

Salu2.
  #3 (permalink)  
Antiguo 19/11/2010, 09:58
Avatar de alfcm  
Fecha de Ingreso: mayo-2009
Mensajes: 291
Antigüedad: 14 años, 10 meses
Puntos: 7
Respuesta: ayuda con transacciones en Zend

Gracias por la respuesta maestro puppet, pero o funciona,solo me bota 500 internal server error
  #4 (permalink)  
Antiguo 19/11/2010, 10:14
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: ayuda con transacciones en Zend

La verdad no se que puede ser, lo acabo de testear y tira bien.
  #5 (permalink)  
Antiguo 19/11/2010, 10:18
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: ayuda con transacciones en Zend

Verifica que tus tablas sean InnoDB ya que es el requerimiento para usar transacciones en MySQL.

Saludos.
  #6 (permalink)  
Antiguo 19/11/2010, 12:48
Avatar de alfcm  
Fecha de Ingreso: mayo-2009
Mensajes: 291
Antigüedad: 14 años, 10 meses
Puntos: 7
Respuesta: ayuda con transacciones en Zend

Gracias maestro GatorV, pues verifique y las tablas son innoDB , pero sigue con el mismo error
  #7 (permalink)  
Antiguo 19/11/2010, 12:59
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: ayuda con transacciones en Zend

Verifica en tus logs y ve que error te marca, ya que el error 500 viene de Apache no de Zend, y en los logs puedes ver más información.

Saludos.
  #8 (permalink)  
Antiguo 19/11/2010, 14:47
Avatar de alfcm  
Fecha de Ingreso: mayo-2009
Mensajes: 291
Antigüedad: 14 años, 10 meses
Puntos: 7
Respuesta: ayuda con transacciones en Zend

disculpen la ignorancia, donde esta el archivo log, o como configuro en todo caso
  #9 (permalink)  
Antiguo 19/11/2010, 15:05
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: ayuda con transacciones en Zend

Si trabajas con un xampp estarian en apache/logs, si no es el caso tendrias que decirnos sobre que plataforma estas desarrollando.

Salu2.
  #10 (permalink)  
Antiguo 20/11/2010, 00:18
Avatar de alfcm  
Fecha de Ingreso: mayo-2009
Mensajes: 291
Antigüedad: 14 años, 10 meses
Puntos: 7
Respuesta: ayuda con transacciones en Zend

gracias masterpuppet, pero cada vez que ejecuto el proyecto no se actualiza el archivo error.log y no me muestra los errores del momento
(trabajo con xampp)
  #11 (permalink)  
Antiguo 21/11/2010, 01:15
Avatar de alfcm  
Fecha de Ingreso: mayo-2009
Mensajes: 291
Antigüedad: 14 años, 10 meses
Puntos: 7
Respuesta: ayuda con transacciones en Zend

Ya solucione el problema, gracias por todo igualmente, todo esta en el manual de zend, y tambien hay que ser bien paciente y buscar mas ejemplos en google

Etiquetas: transacciones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:11.