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
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 originalpublic function agregarAction(){
$this->orden = new Zend_Session_Namespace('orden');
($this->orden->cont == null)?$this->orden->cont=0:$this->orden->cont=$this->orden->cont;
$this->orden->cont = $this->orden->cont + 1;
try{
$this->orden->id = array(); $this->orden->nombre = array(); $this->orden->precio = array(); $this->orden->cantidad = array(); $this->orden->id[$i] = $this->_getParam('id');
$this->orden->nombre[$i] = $this->_getParam('nombre');
$this->orden->precio[$i] = $this->_getParam('precio');
$this->orden->cantidad[$i] = $this->_getParam('cantidad');
}catch(Exception $e) {
$this->logger->log("ADD PROD ".$e->getMessage(),Zend_Log
::ERR); }
$this->_helper->viewRenderer->setNoRender();
$this->_helper->layout->disableLayout();
}
Ahora como solucionarlo es otra historia, no te va a quedar otra que debugear a mano, usar esta linea:
Código PHP:
Ver originalZend_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.