Ver Mensaje Individual
  #14 (permalink)  
Antiguo 29/12/2010, 13:40
Avatar de masterpuppet
masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 10 meses
Puntos: 845
Respuesta: unset en Zend

Creo que no me exprese bien, la idea es que elimines los debug y que en el agregarAction hagas lo mismo que en quitarAction envolviendo en un try & catch pero agregando la linea

Código PHP:
Ver original
  1. $this->orden->id = array();

al inicio, para que veas que en realidad también falla en el agregar, que solo por casualidad un bug de PHP permite la ejecución de agregar, debería quedar así:


Código PHP:
Ver original
  1. public function agregarAction(){
  2.         $this->orden = new Zend_Session_Namespace('orden');
  3.        
  4.         ($this->orden->cont == null)?$this->orden->cont=0:$this->orden->cont=$this->orden->cont;
  5.        
  6.         $this->orden->cont = $this->orden->cont + 1;
  7.      
  8.          try{
  9.               $this->orden->id = array();
  10.               $this->orden->nombre = array();
  11.               $this->orden->precio = array();
  12.               $this->orden->cantidad = array();
  13.               $this->orden->id[$i] = $this->_getParam('id');
  14.               $this->orden->nombre[$i] = $this->_getParam('nombre');
  15.               $this->orden->precio[$i] = $this->_getParam('precio');
  16.               $this->orden->cantidad[$i] = $this->_getParam('cantidad');
  17.  
  18.          }catch(Exception $e)  {
  19.                $this->logger->log("ADD PROD ".$e->getMessage(),Zend_Log::ERR);
  20.          }
  21.  
  22.         $this->_helper->viewRenderer->setNoRender();
  23.         $this->_helper->layout->disableLayout();
  24.     }

Ahora como solucionarlo es otra historia, no te va a quedar otra que debugear a mano, usar esta linea:

Código PHP:
Ver original
  1. Zend_Debug::dump(Zend_Session::isWritable());

para poder tener una idea de en donde es que cambia a false, empeza por el ultimo método del Bootstrap, después salta a los Plugins, a ver si podes dar en donde se da el cambio.