/** * @return bool */ protected function fileUpload() { if ($_FILES['file']['error'] == 0) { $file = UploadedFile::getInstanceByName('file'); $saveFile = new File(); $url = $saveFile->uploadFile($file, 'File', 0, 'redactor', true); $this->url = $url; return true; } else { return false; } }
public function actionUpdate($id) { $this->layout = '@app/views/layouts/admin'; $modelSlider = $this->findSlider($id); $post = Yii::$app->request->post(); if ($modelSlider->load($post) && $modelSlider->save()) { $transaction = Yii::$app->db->beginTransaction(); try { $i = 0; foreach ($post['SliderItem'] as $item) { $err = $_FILES['slide-' . $i]['error']; if ($item['id'] > 0 || $err == 0 || $item['title'] !== '' || $item['body'] !== '') { if ($item['id'] > 0) { $sliderItem = SliderItem::findOne($item['id']); } else { $sliderItem = new SliderItem(); } $sliderItem->title = $item['title']; $sliderItem->body = $item['body']; $sliderItem->slider_id = $modelSlider->id; $sliderItem->sort_order = $i; if ($_FILES['slide-' . $i]['error'] == 0) { if ($sliderItem->fid > 0) { File::fileUnlink(['fid' => $sliderItem->fid]); } $file = UploadedFile::getInstanceByName('slide-' . $i); $saveFile = new File(); $sliderItem->fid = $saveFile->uploadFile($file, 'SliderItem', $sliderItem->id, 'slider'); } $sliderItem->save(); } $i++; } $transaction->commit(); } catch (\Exception $e) { $transaction->rollBack(); } return $this->redirect(['/slider/node/view', 'slug' => $modelSlider->name]); } else { $items = $modelSlider->items; if (!count($items)) { $items[0] = new SliderItem(); } return $this->render('update', ['modelSlider' => $modelSlider, 'modelSliderItem' => $items]); } }
/** * @return array|bool */ protected function fileUpload() { if (isset($_FILES) && is_array($_FILES)) { $this->fileToken(); $files = UploadedFile::getInstancesByName($this->attribute); $fid = []; foreach ($files as $file) { $saveFile = new File(); $fid[] = $saveFile->uploadFile($file, $this->model_name, $this->model_id, $this->attribute); } return $fid; } else { return false; } }