В функции if(!$validate) функция блокировки mail действительно выполняется один раз.
Мне интересно, почему в функции блокировки mail if($validate) выполняется дважды !!! ???
Проблема возникает только в запросе Ajax и в первый раз загружается view page . после этого блок if($validate) запускается один раз, по другим запросам, if($validate) блок if($validate) действительно работает один раз.
public function actionCEmail() { $model = $this->loadModel(Yii::app()->user->id); $model->scenario = 'CEmail'; if(isset($_POST['User'])){ $model->attributes = $_POST['User']; $validate=$model->validate(); if(Yii::app()->request->isAjaxRequest){ if(!$validate) { $to='test@example.ds'; $subject='test'; $message='this is test'; mail($to,$subject,$message); Yii::app()->end(); } if($validate){ $to='test@example.ds'; $subject='test'; $message='this is test'; mail($to,$subject,$message); Yii::app()->end(); } } } if(Yii::app()->request->isAjaxRequest) $this->renderPartial('_cemail',array('model'=>$model),false,true); else $this->render('update',array('model'=>$model,'form'=>'_cemail')); }
Если вам нужна какая-либо информация, скажите мне, поставьте ее.