/** * Updates an existing Peoples model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $id * @return mixed */ public function actionUpdate($id) { $model = $this->findModel($id); if ($model->load(Yii::$app->request->post())) { $birth = date('Y-m-d', strtotime($model->peopleBirthday)); $fluDate = date('Y-m-d', strtotime($model->peopleFluDate)); $model->peopleBirthday = $birth; $model->peopleFluDate = $fluDate; $currentYear = date('Y'); $model->peopleFluTerm = $currentYear - date('Y', strtotime($model->peopleFluDate)); //Вычисляю разницу текущего года и даты флюры $model->save(); graftsPeoples::deleteAll('peopleId = ' . $id); chronicDiseasesPeoples::deleteAll('peopleId = ' . $id); foreach ($model->graft as $m) { $gm = new graftsPeoples(); $gm->peopleId = $model->peopleId; $gm->graftId = $m; $gm->insert(); } foreach ($model->chronic as $c) { $cr = new chronicDiseasesPeoples(); $cr->peopleId = $model->peopleId; $cr->chronicDiseasesId = $c; $cr->insert(); } return $this->redirect(['view', 'id' => $model->peopleId]); } else { $opt = graftsPeoples::find()->where(['peopleId' => $_GET['id']])->all(); $optArr = array(); foreach ($opt as $o) { $optArr[] = $o['graftId']; } $opt2 = chronicDiseasesPeoples::find()->where(['peopleId' => $_GET['id']])->all(); $optArr2 = array(); foreach ($opt2 as $op) { $optArr2[] = $op['chronicDiseasesId']; } $model->graft = $optArr; $model->chronic = $optArr2; return $this->render('update', ['model' => $model]); } }