А тут задача немного другая, удалять картинку из папки и ее запись в базе, при загрузке новой картинке, вместо нее. Проще говоря, есть картинка профиля, когда загружаю новую чтобы старая удалялась
Вот экшен, нечего в голово не пришло как искать картинку по finde() но тогда он выдает не объект а массив на объект. В общем поджскажите как правильно, вычислять старую картинку и удалять ее, когда загружаешь новую.
Спасибо заранее
Код: Выделить всё
public function actionUpload(){
$image = new Images();
if(Yii::$app->request->isPost){
$image->user_id = Yii::$app->user->id;
$image->refer = 'profile';
$image = Images::find()->andWhere(['refer' => 'profile'])->all();
$name = $image->name;
unlink(Yii::getAlias('@profile_img') . DIRECTORY_SEPARATOR .$name);
$image->delete();
$image->update();
$image->image = UploadedFile::getInstance($image, 'image');
if ($image->image) {
$name = 'profile_' . uniqid() . '.' . $image->image->extension;
$image->image->saveAs('uploads/' . $name);
$image->name = $name;
}
$image->save(false);
return $this->redirect(['index']);
}else {
return $this->redirect(['index']);
}
}