[Yii 1]Problema multi update

Hola amigos,

tengo un problema con un multiupdate que no puedo solucionar.

Tengo una vista donde se muestran los record de base datos con DataProvider.

A lado de cada record hay un boton con el qual les dirigo al actionEsito (por ide para que puedan hacer un update).

Quiero quitar el boton y poner un checkbox para que se puedan selecionar muchos record y gracias a un boton que voy a poner a final de la pagina quiero que se vayan al actionEsito (es igual al Update ahora) con todos los record que el usuario à selecionado para que puedan hacer el update de los mismos.

Esta es mi actionConsegne que renderiza la vista:




public function actionConsegne()


	{   


	    $this->layout="//layouts/benvenuto";


		$filiale_destinazione = Yii::app()->user->filiale_id;


		$cr = new CDbCriteria();


        $cr->condition = 'filiale_destinazioneid = :filiale_destinazione AND status = :status AND stampa= :stampa';


		$cr->params = (array(':filiale_destinazione' => $filiale_destinazione, ':status'=>0, 'stampa'=>2));


		$cr->addInCondition('esito', array('In Consegna', 'Assente al 1° Passaggio', 'Sconosciuto al Civico', 'Indirizzo Insufficiente', 'Indirizzo Errato', 'Trasferito', 'Rifiutata', 'Deceduto'));


		$cr->addNotInCondition('vettore', array('POSTE ITALIANE', 'SDA', 'SOGETRAS','TNT','GLS','BARTOLINI','HERMES','FEDEX','UPS','DHL'));


		$dataProvider=new CActiveDataProvider('Missiva', array('criteria'=>$cr));


		$dataProvider->pagination->pageSize=25;	


		$this->render('frontend/consegne',array(


			'dataProvider'=>$dataProvider,


		));


	}



la vista frontend/consegne renderiza esto (_consegne):




<tr id="table_data_content" align="center">

        

        <td id="table_data" width="auto">

	<?php 

	$reso_ps = $data->cliente_nome;

	if ($reso_ps == 10){

	echo '<span STYLE="background:#A9A9A9;"><b><font color="#000000">Prodotto: <u>Posta Semplice</u></b></font></span><br />Trovi il Mittente sulla busta';

	}else{

		if($data->prodotto =='Reso' && $data->cliente_tipovia != 'CASELLA POSTALE'){

		$tracking = $data->tracking;

		$prodotto_precedente = Missiva::model()->findAllByAttributes(array('tracking'=>array($tracking)), array('limit'=>1));

		foreach($prodotto_precedente as $nome_prodotto){

			echo '<span STYLE="background:#A9A9A9;"><font color="#000000"><b>Prodotto: <u>' .$nome_prodotto->prodotto.'</u></b></span></font><br />';

			}		

		echo CHtml::encode($data->cliente_cognome. '   ' .$data->cliente_nome) ;?><br />

	<?php echo CHtml::encode($data->cliente_tipovia. '   ' .$data->cliente_indirizzo. '   n. ' .$data->cliente_civico. ' - '); ?>

	<?php echo CHtml::encode($data->cliente_cap. ', ' .$data->cliente_comune. ' (' .$data->cliente_provincia. ')' ); 

		}}

		

       if($data->prodotto =='Reso' && $data->cliente_tipovia == 'CASELLA POSTALE'){

		$tracking = $data->tracking;

		$prodotto_precedente = Missiva::model()->findAllByAttributes(array('tracking'=>array($tracking)), array('limit'=>1));

		foreach($prodotto_precedente as $nome_prodotto){

			echo '<span STYLE="background:#A9A9A9;"><font color="#000000"><b>Prodotto: <u>' .$nome_prodotto->prodotto.'</u></b></span></font><br />';

			}		

		echo CHtml::encode($data->cliente_cognome. '   ' .$data->cliente_nome) ;?><br />

	<?php echo CHtml::encode($data->cliente_indirizzo. '   n. ' .$data->cliente_civico. ' - '); ?>

	<?php echo CHtml::encode($data->cliente_cap. ', ' .$data->cliente_comune. ' (' .$data->cliente_provincia. ')' ); 

		}		

		

		if($reso_ps!=10 && $data->prodotto!='Reso'){

		if($data->prodotto != 'Posta Massiva'){

		if($data->prodotto != 'Posta Semplice'){

		echo '<span STYLE="background:#A9A9A9;"><font color="#000000"><b>Prodotto: <u>' .$data->prodotto.'</u></b></span></font><br />';	

		echo CHtml::encode($data->cliente_cognome. '   ' .$data->cliente_nome) ;?><br />

	<?php echo CHtml::encode($data->cliente_tipovia. '   ' .$data->cliente_indirizzo. '   n. ' .$data->cliente_civico. ' - '); ?>

	<?php echo CHtml::encode($data->cliente_cap. ', ' .$data->cliente_comune. ' (' .$data->cliente_provincia. ')' ); 	

		}}}

		

		if($reso_ps!=10 && $data->prodotto=='Posta Massiva'){

		echo '<span STYLE="background:#A9A9A9;"><font color="#000000"><b>Prodotto: <u>' .$data->prodotto.'</u></b></span></font><br />';	

		echo $data->cliente_cognome. ' ' .$data->cliente_nome.' ' .$data->cliente_cap. ' - ' .$data->cliente_comune. ' (' .$data->cliente_provincia.')';

			}

		if($reso_ps!=10 && $data->prodotto=='Posta Semplice'){

		echo '<span STYLE="background:#A9A9A9;"><font color="#000000"><b>Prodotto: <u>' .$data->prodotto.'</u></b></span></font><br />';	

		echo $data->cliente_cognome. ' ' .$data->cliente_nome.' ' .$data->cliente_cap. ' - ' .$data->cliente_comune. ' (' .$data->cliente_provincia.')';

			

			}		

		?>

        

   

       </td>

       

       <td id="table_data" width="auto">

	<?php echo CHtml::encode($data->esito); ?>

       </td>

 <!-----------------ESTO ES LO QUE QUIERO CAMBIAR -------------------->      

     <td style="border-right:3px solid #b11a01;" width="auto">

    <?php echo CHtml::linkButton('Assegna Esito',array('class'=>'btn btn-primary btn-small', 'submit' => array('missiva/esito', 'id'=>$data->missiva_id)))?> 

<!-----------------ESTO ES LO QUE QUIERO CAMBIAR -------------------->    

     </td>



Quiero quitar de esta vista el boton (al final de la pagina):




<?php /* echo CHtml::linkButton('Assegna Esito',array('class'=>'btn btn-primary btn-small', 'submit' => array('missiva/esito', 'id'=>$data->missiva_id)))*/?>  



y poner un checkbox … algo asi:




    <?php $form=$this->beginWidget('CActiveForm', array(

	'id'=>'missiva-form',

	// Please note: When you enable ajax validation, make sure the corresponding

	// controller action is handling ajax validation correctly.

	// There is a call to performAjaxValidation() commented in generated controller code.

	// See class documentation of CActiveForm for details on this.

	'enableAjaxValidation'=>true,

	'clientOptions'=>array(

	 'validate OnSubmit'=>true,

))); ?>

	<?php echo CHtml::activeCheckBox($model,'missiva_id', array('class'=>'span1', 'name'=>'check_id', 'value'=>'check_id', 'uncheckValue'=>0))/*CHtml::encode($data->missiva_id)*/; ?>

       <?php $this->endWidget(); ?>



Del momento mi actionEsito solo permite de guardar un record a la vez.

Esta es mi actionEsito;




public function actionEsito($id)


	{


		$model=$this->loadModel($id);


		$this->performAjaxValidation($model);


		if(isset($_POST['Missiva']))


		{


			$model->attributes=$_POST['Missiva'];


			if($model->save())


				$this->redirect(array('consegne');


		}





		$this->render('frontend/esito',array(


			'model'=>$model,


		));


	}



Como puedo hacer para que se puedan guardar los ide que llegan por $_POST desde la vista esito???

Por al action create se como se insertan muchos record a la vez…pero por el Update me estoy volviendo loco :frowning: Alguien puede ayudarme porfavor!!! Les pido disculpa por mi espanol.

Nadie tiene solución ???? :(