Tengo una aplicación que genera documentos donde se rellenan campos a partir de los valores almacenados en la BD.
Un controlador Modelo es el que se encarga de generar los documentos a partir de un fichero .rtf.
Mi problema surge cuando quiero hacer un botón en la página index de ese controlador para generar los documentos. Según como lo escriba, se ejecuta el action cuando se carga la página, no al pulsar el botón (que es cuando debería). O bien, si no se ejecuta al cargarse la página, me da un error al pulsar el botón.
La cabecera de la función es esta:
public function actionGeneraDoc($solicitud, $documento, $rutaPlantilla, $fsalida)
Con este código se ejecuta el action al cargarse la página (es lo mismo en diferentes pruebas):
<?php echo CHtml::submitButton('Generar Documento "Resolucion Inadmision Fuera Plazo"', array(
$this->actionGeneraDoc($id, 'ResolucionInadmisionFueraPlazo', '/opt/lampp/htdocs/sacatic/documentos/', $fsalida),
)); ?>
<?php $this->widget('zii.widgets.jui.CJuiButton', array(
'buttonType'=>'link',
'name'=>'btnClick',
'caption'=>'Generar Documento "Notificacion Resolucion Inadmision"',
'url'=>array($this->actionGeneraDoc($id, "NotifResolInadmis", "/opt/lampp/htdocs/sacatic/documentos/", $fsalida)),
)); ?>
<?php echo CHtml::button('Generar Documento "Notificacion Resolucion Inadmision"', array(
'onclick'=>$this->actionGeneraDoc($id, "NotifResolInadmis", "/opt/lampp/htdocs/sacatic/documentos/", $fsalida))); ?>
Si el parámetro del action lo entrecomillo, no se ejecuta al cargar la página, pero da problemas al pulsar el botón:
<?php echo CHtml::submitButton('Generar Documento "Resolucion Inadmision Fuera Plazo"', array(
'$this->actionGeneraDoc($id, "ResolucionInadmisionFueraPlazo", "/opt/lampp/htdocs/sacatic/documentos/", $fsalida'),
)); ?>
<?php $this->widget('zii.widgets.jui.CJuiButton', array(
'buttonType'=>'link',
'name'=>'btnClick',
'caption'=>'Generar Documento "Notificacion Resolucion Inadmision"',
'url'=>array('$this->actionGeneraDoc($id, "NotifResolInadmis", "/opt/lampp/htdocs/sacatic/documentos/", $fsalida)'),
)); ?>
<?php echo CHtml::button('Generar Documento "Notificacion Resolucion Inadmision"', array(
'onclick'=>'$this->actionGeneraDoc($id, "NotifResolInadmis", "/opt/lampp/htdocs/sacatic/documentos/", $fsalida)')); ?>
Error:
Error 404
No es posible resolver la solicitud "$this->actionGeneraDoc($id, "NotifResolInadmis", "/opt/lampp/htdocs/sacatic/documentos/", $fsalida)"