Appel ajax avec condition

Bonjour à tous !

Je souhaiterai faire un appel AJAX sur un '‘onclick’

voici mon button sur le quel se trouve l’appel AJAX ( j’utilise CGridView) :




'archiver' => array(

	'label' => 'Archiver',

	'imageUrl' => Yii::app ()->baseUrl . "/images/add_archive_blue.png",

	'click' => "function(){

    	$.fn.yiiGridView.update('note-de-frais-grid',

		{

        	type:'POST',

        	url:$(this).attr('href'),

        	success:function(data)

			{

				$('.output').html(data);

            	$.fn.yiiGridView.update('note-de-frais-grid');

        	}

    	})

    	return false;

	}

	",

	'url' => 'Yii::app()->controller->createUrl("Archiver",array("id"=>$data->primaryKey))'

                            	

),



ici la fonction qui est exécuté :




public function actionArchiver($id)

{

	$model = NoteDeFrais::model()->findByPk( $id );

	if($model->etat = 1)

	{

		if(Yii::app()->request->isPostRequest)

		{

			$model->etat = 2;

			$model->date_fermeture_ndf = $model->dernier_update = Yii::app()->dateFormatter->format ('y-M-d H:m:s',time());

			$model->save();

		}

		else

		{

			throw new CHttpException ( 400,'erreur');

		}

	} 

	else

	{

		echo ' Seul les notes <b>Validé</b> peuvent etre archivées !';

	}

}



Le problème est le suivant, la condition ,


 if($model->etat = 1) 

ne réagit pas comme une condition mais un update. C’est à dire que quelque soit ma valeur de $model->etat avant l’appel ajax via le button , au passage de la condition la valeur de $model->etat passera a 1.

Une idée de ce qui peut provoquer cela ?

Ma condition est mal placé ?

Garfield

Salut !

Tu vas sûrement t’en vouloir, mais le test à faire est :




if($model->etat == 1) 



Sinon c’est une affectation !

Ahahahaha bah tu sais quoi t’as réussi à me faire faire un facepalm :blink:

Merci RadicalDingos :D